<?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%3ATaxobox</id>
	<title>Modul:Taxobox - Revizia istoricului</title>
	<link rel="self" type="application/atom+xml" href="https://enciclopedia.md/index.php?action=history&amp;feed=atom&amp;title=Modul%3ATaxobox"/>
	<link rel="alternate" type="text/html" href="https://enciclopedia.md/index.php?title=Modul:Taxobox&amp;action=history"/>
	<updated>2026-06-06T20:34:49Z</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:Taxobox&amp;diff=515&amp;oldid=prev</id>
		<title>Ana Vornic: Pagină nouă: local getArgs = require(&#039;Modul:Arguments&#039;).getArgs local infobox = require(&#039;Modul:Infobox&#039;) local infoboxImage = require(&#039;Modul:InfoboxImage&#039;).InfoboxImage local wikidata = require(&#039;Modul:Wikidata&#039;) local StringUtils = require(&#039;Modul:StringUtils&#039;) local join = require(&#039;Modul:Separated entries&#039;)._main local p = {} local taxonorder = { 	&#039;Q22666877&#039;, -- superdomeniu 	&#039;Q146481&#039;, --domeniu 	&#039;Q3491996&#039;, --subdomeniu 	&#039;Q19858692&#039;, --supraregn 	&#039;Q36732&#039;, --regn 	&#039;Q2752679&#039;, --subregn...</title>
		<link rel="alternate" type="text/html" href="https://enciclopedia.md/index.php?title=Modul:Taxobox&amp;diff=515&amp;oldid=prev"/>
		<updated>2024-07-19T10:08:07Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: local getArgs = require(&amp;#039;Modul:Arguments&amp;#039;).getArgs local infobox = require(&amp;#039;Modul:Infobox&amp;#039;) local infoboxImage = require(&amp;#039;Modul:InfoboxImage&amp;#039;).InfoboxImage local wikidata = require(&amp;#039;Modul:Wikidata&amp;#039;) local StringUtils = require(&amp;#039;Modul:StringUtils&amp;#039;) local join = require(&amp;#039;Modul:Separated entries&amp;#039;)._main local p = {} local taxonorder = { 	&amp;#039;Q22666877&amp;#039;, -- superdomeniu 	&amp;#039;Q146481&amp;#039;, --domeniu 	&amp;#039;Q3491996&amp;#039;, --subdomeniu 	&amp;#039;Q19858692&amp;#039;, --supraregn 	&amp;#039;Q36732&amp;#039;, --regn 	&amp;#039;Q2752679&amp;#039;, --subregn...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pagină nouă&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local getArgs = require(&amp;#039;Modul:Arguments&amp;#039;).getArgs&lt;br /&gt;
local infobox = require(&amp;#039;Modul:Infobox&amp;#039;)&lt;br /&gt;
local infoboxImage = require(&amp;#039;Modul:InfoboxImage&amp;#039;).InfoboxImage&lt;br /&gt;
local wikidata = require(&amp;#039;Modul:Wikidata&amp;#039;)&lt;br /&gt;
local StringUtils = require(&amp;#039;Modul:StringUtils&amp;#039;)&lt;br /&gt;
local join = require(&amp;#039;Modul:Separated entries&amp;#039;)._main&lt;br /&gt;
local p = {}&lt;br /&gt;
local taxonorder = {&lt;br /&gt;
	&amp;#039;Q22666877&amp;#039;, -- superdomeniu&lt;br /&gt;
	&amp;#039;Q146481&amp;#039;, --domeniu&lt;br /&gt;
	&amp;#039;Q3491996&amp;#039;, --subdomeniu&lt;br /&gt;
	&amp;#039;Q19858692&amp;#039;, --supraregn&lt;br /&gt;
	&amp;#039;Q36732&amp;#039;, --regn&lt;br /&gt;
	&amp;#039;Q2752679&amp;#039;, --subregn&lt;br /&gt;
	&amp;#039;Q3150876&amp;#039;, --infraregn&lt;br /&gt;
	&amp;#039;Q3978005&amp;#039;, --supraîncrengătură&lt;br /&gt;
	&amp;#039;Q38348&amp;#039;, --încrengătură&lt;br /&gt;
	&amp;#039;Q1153785&amp;#039;, --subîncrengătură&lt;br /&gt;
	&amp;#039;Q2361851&amp;#039;, --infraîncrengătură&lt;br /&gt;
	&amp;#039;Q334460&amp;#039;, --divisio&lt;br /&gt;
	&amp;#039;Q3491997&amp;#039;, --subdivisio&lt;br /&gt;
	&amp;#039;Q3504061&amp;#039;, --supraclasă&lt;br /&gt;
	&amp;#039;Q37517&amp;#039;, --clasă&lt;br /&gt;
	&amp;#039;Q5867051&amp;#039;, --subclasă&lt;br /&gt;
	&amp;#039;Q2007442&amp;#039;, --infraclasă&lt;br /&gt;
	&amp;#039;Q6054425&amp;#039;, --supracohortă&lt;br /&gt;
	&amp;#039;Q2981883&amp;#039;, --cohortă&lt;br /&gt;
	&amp;#039;Q6541077&amp;#039;, --subcohortă&lt;br /&gt;
	&amp;#039;Q4226087&amp;#039;, --infracohortă&lt;br /&gt;
	&amp;#039;Q30093070&amp;#039;, --diviziune&lt;br /&gt;
	&amp;#039;Q30093105&amp;#039;, --subdiviziune&lt;br /&gt;
	&amp;#039;Q21061732&amp;#039;, --serie&lt;br /&gt;
	&amp;#039;Q5868144&amp;#039;, --supraordin&lt;br /&gt;
	&amp;#039;Q36602&amp;#039;, --ordin&lt;br /&gt;
	&amp;#039;Q6054237&amp;#039;, --magnordin&lt;br /&gt;
	&amp;#039;Q5867959&amp;#039;, --subordin&lt;br /&gt;
	&amp;#039;Q2889003&amp;#039;, --infraordin&lt;br /&gt;
	&amp;#039;Q6311258&amp;#039;, -- parvordin&lt;br /&gt;
	&amp;#039;Q10861426&amp;#039;, --secțiune&lt;br /&gt;
	&amp;#039;Q10861375&amp;#039;, -- subsecțiune zoologică&lt;br /&gt;
	&amp;#039;Q2136103&amp;#039;, --suprafamilie&lt;br /&gt;
	&amp;#039;Q10296147&amp;#039;, --epifamilie&lt;br /&gt;
	&amp;#039;Q35409&amp;#039;, --familie&lt;br /&gt;
	&amp;#039;Q164280&amp;#039;, --subfamilie&lt;br /&gt;
	&amp;#039;Q5481039&amp;#039;, --infrafamilie&lt;br /&gt;
	&amp;#039;Q14817220&amp;#039;, --supratrib&lt;br /&gt;
	&amp;#039;Q227936&amp;#039;, --trib&lt;br /&gt;
	&amp;#039;Q3965313&amp;#039;, --subtrib&lt;br /&gt;
	&amp;#039;Q3798630&amp;#039;, --infratrib&lt;br /&gt;
	&amp;#039;Q1783100&amp;#039;, --supragen&lt;br /&gt;
	&amp;#039;Q34740&amp;#039;, --gen&lt;br /&gt;
	&amp;#039;Q3238261&amp;#039;, --subgen&lt;br /&gt;
	&amp;#039;Q3181348&amp;#039;, -- secțiune botanică&lt;br /&gt;
	&amp;#039;Q5998839&amp;#039;, --subsecțiune botanică&lt;br /&gt;
	&amp;#039;Q3025161&amp;#039;, --serie&lt;br /&gt;
	&amp;#039;Q13198444&amp;#039;, -- subserie&lt;br /&gt;
	&amp;#039;Q1783100&amp;#039;, --supraspecie&lt;br /&gt;
	&amp;#039;Q7432&amp;#039;, --specie&lt;br /&gt;
	&amp;#039;Q68947&amp;#039;, --subspecie&lt;br /&gt;
	&amp;#039;Q21446603&amp;#039;, --infraspecie&lt;br /&gt;
	&amp;#039;Q767728&amp;#039;, --varietate&lt;br /&gt;
    &amp;#039;Q855769&amp;#039;, --tulpină&lt;br /&gt;
}&lt;br /&gt;
local argMap = {&lt;br /&gt;
	superdomain = &amp;#039;Q22666877&amp;#039;,	supradomeniu = &amp;#039;Q22666877&amp;#039;,&lt;br /&gt;
	domain = &amp;#039;Q146481&amp;#039;,	domeniu = &amp;#039;Q146481&amp;#039;,&lt;br /&gt;
	subdomain = &amp;#039;Q3491996&amp;#039;,	subdomeniu = &amp;#039;Q3491996&amp;#039;,&lt;br /&gt;
	superregnum = &amp;#039;Q19858692&amp;#039;,	supraregn = &amp;#039;Q19858692&amp;#039;,&lt;br /&gt;
	regnum = &amp;#039;Q36732&amp;#039;, regn = &amp;#039;Q36732&amp;#039;, kingdom = &amp;#039;Q36732&amp;#039;,&lt;br /&gt;
	subregnum = &amp;#039;Q2752679&amp;#039;, subregn = &amp;#039;Q2752679&amp;#039;,&lt;br /&gt;
	infraregnum = &amp;#039;Q3150876&amp;#039;, infraregn = &amp;#039;Q3150876&amp;#039;,&lt;br /&gt;
	superdivisio = &amp;#039;Q3978005&amp;#039;, superdiviziune = &amp;#039;Q3978005&amp;#039;, superphylum = &amp;#039;Q3978005&amp;#039;, --supraîncrengătură&lt;br /&gt;
	divisio = &amp;#039;Q38348&amp;#039;, phylum = &amp;#039;Q38348&amp;#039;, --încrengătură&lt;br /&gt;
	subphylum = &amp;#039;Q1153785&amp;#039;, subdivisio = &amp;#039;Q1153785&amp;#039;, --subîncrengătură&lt;br /&gt;
	infraphylum = &amp;#039;Q2361851&amp;#039;, --infraîncrengătură&lt;br /&gt;
	microphylum = &amp;#039;Q1153785&amp;#039;,&lt;br /&gt;
	superclassis = &amp;#039;Q3504061&amp;#039;, --supraclasă&lt;br /&gt;
	classis = &amp;#039;Q37517&amp;#039;, --clasă&lt;br /&gt;
	subclassis = &amp;#039;Q5867051&amp;#039;, --subclasă&lt;br /&gt;
	infraclassis = &amp;#039;Q2007442&amp;#039;, --infraclasă&lt;br /&gt;
	supracohors = &amp;#039;Q6054425&amp;#039;, --supracohortă&lt;br /&gt;
	cohors = &amp;#039;Q2981883&amp;#039;, --cohortă&lt;br /&gt;
	subcohors = &amp;#039;Q6541077&amp;#039;, --subcohortă&lt;br /&gt;
	infracohors = &amp;#039;Q4226087&amp;#039;, --infracohortă&lt;br /&gt;
	magnordo = &amp;#039;Q6054237&amp;#039;,&lt;br /&gt;
	superordo = &amp;#039;Q5868144&amp;#039;, --supraordin&lt;br /&gt;
	ordo = &amp;#039;Q36602&amp;#039;, --ordin&lt;br /&gt;
	subordo = &amp;#039;Q5867959&amp;#039;, --subordin&lt;br /&gt;
	infraordo = &amp;#039;Q2889003&amp;#039;, --infraordin&lt;br /&gt;
	parvordo = &amp;#039;Q6311258&amp;#039;,&lt;br /&gt;
	zoosectio = &amp;#039;Q3181348&amp;#039;, -- secțiune zoologică&lt;br /&gt;
	zoosubsectio = &amp;#039;Q10861375&amp;#039;,&lt;br /&gt;
	superfamilia = &amp;#039;Q2136103&amp;#039;, --suprafamilie&lt;br /&gt;
	epifamilia = &amp;#039;Q10296147&amp;#039;, --epifamilie&lt;br /&gt;
	familia = &amp;#039;Q35409&amp;#039;, --familie&lt;br /&gt;
	subfamilia = &amp;#039;Q164280&amp;#039;, --subfamilie&lt;br /&gt;
	infrafamilia = &amp;#039;Q5481039&amp;#039;, --infrafamilie&lt;br /&gt;
	supertribus = &amp;#039;Q14817220&amp;#039;, --supratrib&lt;br /&gt;
	tribus = &amp;#039;Q227936&amp;#039;, --trib&lt;br /&gt;
	subtribus = &amp;#039;Q3965313&amp;#039;, --subtrib&lt;br /&gt;
	infratribus = &amp;#039;Q3798630&amp;#039;, --infratrib&lt;br /&gt;
	supergenus = &amp;#039;Q1783100&amp;#039;, --supragen&lt;br /&gt;
	genus = &amp;#039;Q34740&amp;#039;, --gen&lt;br /&gt;
	subgenus = &amp;#039;Q3238261&amp;#039;, --subgen&lt;br /&gt;
	sectio = &amp;#039;Q3181348&amp;#039;, -- secțiune botanică&lt;br /&gt;
	subsectio = &amp;#039;Q5998839&amp;#039;,&lt;br /&gt;
	series2 = &amp;#039;Q3025161&amp;#039;, --serie&lt;br /&gt;
	subseries2 = &amp;#039;Q13198444&amp;#039;, -- subserie&lt;br /&gt;
	superspecies = &amp;#039;Q1783100&amp;#039;, --supraspecie&lt;br /&gt;
	species = &amp;#039;Q7432&amp;#039;, --specie&lt;br /&gt;
	subspecies = &amp;#039;Q68947&amp;#039;, --subspecie&lt;br /&gt;
	infraspecies = &amp;#039;Q21446603&amp;#039;, --infraspecie&lt;br /&gt;
	variety = &amp;#039;Q767728&amp;#039;, varietate = &amp;#039;Q767728&amp;#039;, -- varietate&lt;br /&gt;
	strain = &amp;#039;Q855769&amp;#039;, -- tulpină&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function extractStatusFromWikidata()&lt;br /&gt;
	local statusClaims = wikidata.findClaimsForProperty(nil, &amp;#039;P141&amp;#039;) -- iucn conservation status&lt;br /&gt;
	local statusDescriptions = {}&lt;br /&gt;
	if statusClaims and #statusClaims &amp;gt; 0 then&lt;br /&gt;
		for statusIdx, statusClaim in ipairs(statusClaims) do&lt;br /&gt;
			local statusQString = StringUtils.prependIfMissing({tostring(statusClaim.mainsnak.datavalue.value[&amp;#039;numeric-id&amp;#039;]), &amp;#039;Q&amp;#039;})&lt;br /&gt;
			local statusImg = wikidata.findOneValueNoRef(&amp;#039;P18&amp;#039;, statusQString)&lt;br /&gt;
			if statusImg then statusImg = mw.ustring.gsub(statusImg, &amp;#039;.svg&amp;#039;, &amp;#039; ro.svg&amp;#039;) end&lt;br /&gt;
			local statusTxt = wikidata.findLabel(statusQString)&lt;br /&gt;
			local statusCats = wikidata.getBestEntityIdsList(nil, &amp;#039;P910&amp;#039;)&lt;br /&gt;
			statusDescriptions[statusIdx] = &amp;#039;&amp;#039;&lt;br /&gt;
			if statusImg then statusDescriptions[statusIdx] = statusDescriptions[statusIdx] .. &amp;#039;[[Fișier:&amp;#039; .. statusImg .. &amp;#039;|frameless]]&amp;#039; end&lt;br /&gt;
			if statusTxt then statusDescriptions[statusIdx] = statusDescriptions[statusIdx] .. tostring(mw.html.create(&amp;#039;br&amp;#039;)) .. statusTxt end&lt;br /&gt;
			if statusCats then&lt;br /&gt;
				for catIdx,catId in ipairs(statusCats) do&lt;br /&gt;
					local localCatTitle = mw.wikibase.sitelink(&amp;#039;Q&amp;#039; .. catId)&lt;br /&gt;
					if localCatTitle and mw.ustring.len(mw.text.trim(localCatTitle)) &amp;gt; 0 then&lt;br /&gt;
						statusDescriptions[statusIdx] = statusDescriptions[statusIdx] .. &amp;#039;[[&amp;#039; .. localCatTitle .. &amp;#039;]]&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			statusDescriptions[statusIdx] = statusDescriptions[statusIdx] .. wikidata.outputReferences(statusClaim)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return statusDescriptions&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function extractStatusFromArgs(args)&lt;br /&gt;
	local statusData = {}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;] = {}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;ex&amp;#039;] = {image=&amp;#039;Status iucn2.3 EX ro.svg&amp;#039;, text=&amp;#039;Dispărut&amp;#039;, cat=&amp;#039;Specii dispărute&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;ew&amp;#039;] = {image=&amp;#039;Status iucn2.3 EW ro.svg&amp;#039;, text=&amp;#039;Stare de dispariție&amp;#039;, cat=&amp;#039;Specii dispărute în stare sălbatică&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;cr&amp;#039;] = {image=&amp;#039;Status iucn2.3 CR ro.svg&amp;#039;, text=&amp;#039;Critic&amp;#039;, cat=&amp;#039;Specii în pericol critic de dispariție&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;en&amp;#039;] = {image=&amp;#039;Status iucn2.3 EN ro.svg&amp;#039;, text=&amp;#039;În pericol&amp;#039;, cat=&amp;#039;Specii amenințate&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;vu&amp;#039;] = {image=&amp;#039;Status iucn2.3 VU ro.svg&amp;#039;, text=&amp;#039;Vulnerabil&amp;#039;, cat=&amp;#039;Specii în stare vulnerabilă&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;lr&amp;#039;] = {image=&amp;#039;Status iucn2.3 blank.svg&amp;#039;, text=&amp;#039;Risc minim&amp;#039;, cat=&amp;#039;Invalid conservation status&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;cd&amp;#039;] = {image=&amp;#039;Status iucn2.3 CD ro.svg&amp;#039;, text=&amp;#039;[[Conservation Dependent]]&amp;#039;, cat=&amp;#039;IUCN Red List conservation dependent species&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;lr/cd&amp;#039;] = statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;cd&amp;#039;]&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;nt&amp;#039;] = {image=&amp;#039;Status iucn2.3 NT ro.svg&amp;#039;, text=&amp;#039;Risc scăzut (NT)&amp;#039;, cat=&amp;#039;Specii amenințate moderat&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;lr/nt&amp;#039;] = statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;nt&amp;#039;]&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;lc&amp;#039;] = {image=&amp;#039;Status iucn2.3 LC ro.svg&amp;#039;, text=&amp;#039;Risc scăzut (LC)&amp;#039;, cat=&amp;#039;Specii cu risc scăzut&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;lr/lc&amp;#039;] = statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;lc&amp;#039;]&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;dd&amp;#039;] = {image=&amp;#039;Status iucn2.3 blank.svg&amp;#039;, text=&amp;#039;Date insuficiente&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;ne&amp;#039;] = {text=&amp;#039;Neevaluată&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;nr&amp;#039;] = {text=&amp;#039;Nerecunoscută&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;pe&amp;#039;] = {image=&amp;#039;Status iucn2.3 CR ro.svg&amp;#039;, text=&amp;#039;Critic, posibilă dispariție&amp;#039;, cat=&amp;#039;Specii în pericol critic de dispariție&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn2.3&amp;#039;][&amp;#039;pew&amp;#039;] = {image=&amp;#039;Status iucn2.3 CR ro.svg&amp;#039;, text=&amp;#039;Critic, posibilă dispariție în sălbăticie&amp;#039;, cat=&amp;#039;Specii în pericol critic de dispariție&amp;#039;}&lt;br /&gt;
&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;] = {}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;ex&amp;#039;] = {image=&amp;#039;Status iucn3.1 EX ro.svg&amp;#039;, text=&amp;#039;Dispărut&amp;#039;, cat=&amp;#039;Specii dispărute&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;ew&amp;#039;] = {image=&amp;#039;Status iucn3.1 EW ro.svg&amp;#039;, text=&amp;#039;Stare de dispariție&amp;#039;, cat=&amp;#039;Specii dispărute în stare sălbatică&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;cr&amp;#039;] = {image=&amp;#039;Status iucn3.1 CR ro.svg&amp;#039;, text=&amp;#039;Critic&amp;#039;, cat=&amp;#039;Specii în pericol critic de dispariție&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;en&amp;#039;] = {image=&amp;#039;Status iucn3.1 EN ro.svg&amp;#039;, text=&amp;#039;În pericol&amp;#039;, cat=&amp;#039;Specii amenințate&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;vu&amp;#039;] = {image=&amp;#039;Status iucn3.1 VU ro.svg&amp;#039;, text=&amp;#039;Vulnerabil&amp;#039;, cat=&amp;#039;Specii în stare vulnerabilă&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;nt&amp;#039;] = {image=&amp;#039;Status iucn3.1 NT ro.svg&amp;#039;, text=&amp;#039;Risc scăzut (NT)&amp;#039;, cat=&amp;#039;Specii amenințate moderat&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;lc&amp;#039;] = {image=&amp;#039;Status iucn3.1 LC ro.svg&amp;#039;, text=&amp;#039;Risc scăzut (LC)&amp;#039;, cat=&amp;#039;Specii cu risc scăzut&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;dd&amp;#039;] = {image=&amp;#039;Status iucn3.1 blank.svg&amp;#039;, text=&amp;#039;Date insuficiente&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;ne&amp;#039;] = {text=&amp;#039;Neevaluată&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;nr&amp;#039;] = {text=&amp;#039;Nerecunoscută&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;pw&amp;#039;] = {image=&amp;#039;Status iucn3.1 LC ro.svg&amp;#039;, text=&amp;#039;Critic, posibilă dispariție&amp;#039;, cat=&amp;#039;Specii în pericol critic de dispariție&amp;#039;}&lt;br /&gt;
	statusData[&amp;#039;iucn3.1&amp;#039;][&amp;#039;pew&amp;#039;] = {image=&amp;#039;Status iucn3.1 LC ro.svg&amp;#039;, text=&amp;#039;Critic, posibilă dispariție în sălbăticie&amp;#039;, cat=&amp;#039;Specii în pericol critic de dispariție&amp;#039;}&lt;br /&gt;
	&lt;br /&gt;
	statusData[&amp;#039;iucn&amp;#039;] = statusData[&amp;#039;iucn3.1&amp;#039;]&lt;br /&gt;
	&lt;br /&gt;
	local ret = {}&lt;br /&gt;
	for i=1,2 do&lt;br /&gt;
		local statusArgName = &amp;#039;status&amp;#039;&lt;br /&gt;
		if i ~= 1 then statusArgName = statusArgName .. tostring(i) end&lt;br /&gt;
		local statusObj = statusData[mw.ustring.lower(args[statusArgName .. &amp;#039;_system&amp;#039;])][mw.ustring.lower(args[statusArgName])]&lt;br /&gt;
		if statusObj == nil then return &amp;#039;&amp;#039; end&lt;br /&gt;
		local retTxt = &amp;#039;&amp;#039;&lt;br /&gt;
		if statusObj.image then retTxt = retTxt .. &amp;#039;[[Fișier:&amp;#039; .. statusObj.image .. &amp;#039;|frameless]]&amp;#039; end&lt;br /&gt;
		if statusObj.text then retTxt = retTxt .. tostring(mw.html.create(&amp;#039;br&amp;#039;)) .. statusObj.text end&lt;br /&gt;
		if statusObj.cat then retTxt = retTxt .. &amp;#039;[[Categorie:&amp;#039; .. statusObj.cat .. &amp;#039;]]&amp;#039; end&lt;br /&gt;
		table.insert(ret, retTxt)&lt;br /&gt;
	end&lt;br /&gt;
	return ret&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function extractTaxonomyFromArgs(args)&lt;br /&gt;
	local taxonomy = nil&lt;br /&gt;
	for argN,argV in pairs(args) do&lt;br /&gt;
		if argMap[argN] then&lt;br /&gt;
			if taxonomy == nil then taxonomy = {} end&lt;br /&gt;
			taxonomy[argMap[argN]] = argV&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if args[&amp;#039;binomial&amp;#039;] then&lt;br /&gt;
		if taxonomy == nil then taxonomy = {} end&lt;br /&gt;
		taxonomy.name = binomial&lt;br /&gt;
	end&lt;br /&gt;
	local argAuthority = args[&amp;#039;binomial_authority&amp;#039;] or args[&amp;#039;binomial authority&amp;#039;] or args[&amp;#039;autoritate_binomial&amp;#039;] or args[&amp;#039;binomial_autoritate&amp;#039;]&lt;br /&gt;
	if argAuthority then&lt;br /&gt;
		if taxonomy == nil then taxonomy = {} end&lt;br /&gt;
		taxonomy.author = argAuthority&lt;br /&gt;
	end&lt;br /&gt;
	return nil&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function extractTaxonomyFromWikidata() &lt;br /&gt;
	local taxonomy = nil&lt;br /&gt;
	local taxonNameClaims = wikidata.findClaimsForProperty(nil, &amp;#039;P225&amp;#039;) -- taxon name&lt;br /&gt;
	local taxonRanks = wikidata.getBestEntityIdsList(nil, &amp;#039;P105&amp;#039;) -- taxon rank list&lt;br /&gt;
	local qTaxonRank = nil&lt;br /&gt;
	if taxonRanks and #taxonRanks &amp;gt; 0 then qTaxonRank = StringUtils.prependIfMissing({taxonRanks[1], &amp;#039;Q&amp;#039;}) end -- taxon rank&lt;br /&gt;
	local rankValue = { deprecated = 0, normal = 1, preferred = 2 }&lt;br /&gt;
	if taxonNameClaims and #taxonNameClaims &amp;gt; 0 then&lt;br /&gt;
		table.sort(taxonNameClaims, function(c1, c2) return rankValue[c1.rank] &amp;gt; rankValue[c2.rank] end)&lt;br /&gt;
		taxonomy = {}&lt;br /&gt;
		taxonomy.qrank = qTaxonRank&lt;br /&gt;
		taxonomy.name = wikidata.printSnak(taxonNameClaims[1].mainsnak) .. wikidata.outputReferences(taxonNameClaims[1])&lt;br /&gt;
		if taxonNameClaims[1].qualifiers and taxonNameClaims[1].qualifiers[&amp;#039;P405&amp;#039;] then -- taxon author&lt;br /&gt;
			local taxonAuthorNamesList = {}&lt;br /&gt;
			for taxonAuthorIdx,taxonAuthorQualifier in ipairs(taxonNameClaims[1].qualifiers[&amp;#039;P405&amp;#039;]) do&lt;br /&gt;
				local taxonAuthorCitation = nil&lt;br /&gt;
				if taxonAuthorQualifier.datatype == &amp;#039;wikibase-item&amp;#039; and taxonAuthorQualifier.datavalue.type == &amp;#039;wikibase-entityid&amp;#039; then&lt;br /&gt;
					local taxonAuthorQID = StringUtils.prependIfMissing({tostring(taxonAuthorQualifier.datavalue.value[&amp;#039;numeric-id&amp;#039;]), &amp;#039;Q&amp;#039;})&lt;br /&gt;
					taxonAuthorCitation = wikidata.findOneValueNoRef(&amp;#039;P428&amp;#039;, taxonAuthorQID) -- botanist author abbreviation&lt;br /&gt;
					if taxonAuthorCitation == nil then&lt;br /&gt;
						taxonAuthorCitation = wikidata.findOneValueNoRef(&amp;#039;P835&amp;#039;, taxonAuthorQID) --author citation (zoology)&lt;br /&gt;
					end&lt;br /&gt;
					local taxonAuthorLink = nil&lt;br /&gt;
					if taxonAuthorCitation == nil then&lt;br /&gt;
						taxonAuthorLink = wikidata.printSnak(taxonAuthorQualifier)&lt;br /&gt;
					else &lt;br /&gt;
						taxonAuthorLink = &amp;#039;[[&amp;#039; .. (mw.wikibase.sitelink(taxonAuthorQID) or (&amp;#039;:d:&amp;#039; .. taxonAuthorQID)) .. &amp;#039;|&amp;#039; .. taxonAuthorCitation .. &amp;#039;]]&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					taxonAuthorLink = taxonAuthorLink .. wikidata.outputReferences(taxonAuthorQualifier)&lt;br /&gt;
					table.insert(taxonAuthorNamesList, taxonAuthorLink)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			taxonAuthorNamesList.separator = &amp;#039;, &amp;#039;&lt;br /&gt;
			taxonomy.author = join(taxonAuthorNamesList)&lt;br /&gt;
		end&lt;br /&gt;
		if taxonNameClaims[1].qualifiers and taxonNameClaims[1].qualifiers[&amp;#039;P574&amp;#039;] and taxonNameClaims[1].qualifiers[&amp;#039;P574&amp;#039;][1] then&lt;br /&gt;
			local d = wikidata.extractDateFromClaim(taxonNameClaims[1].qualifiers[&amp;#039;P574&amp;#039;][1])&lt;br /&gt;
			if d and d.year then taxonomy.publicationDate = tostring(d.year) end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local taxonParentIdList = wikidata.getBestEntityIdsList(nil, &amp;#039;P171&amp;#039;) -- parent taxon&lt;br /&gt;
	while taxonParentIdList and #taxonParentIdList &amp;gt; 0 do&lt;br /&gt;
		if taxonomy == nil then taxonomy = {} end&lt;br /&gt;
		local taxonParentId = taxonParentIdList[1]&lt;br /&gt;
		local qTaxonParentId = StringUtils.prependIfMissing({taxonParentId, &amp;#039;Q&amp;#039;})&lt;br /&gt;
		local taxonParentName = wikidata.findOneValueNoRef(&amp;#039;P225&amp;#039;, qTaxonParentId) -- taxon name&lt;br /&gt;
		local taxonSitelink = mw.wikibase.sitelink(qTaxonParentId) or (&amp;#039;:d:&amp;#039; .. qTaxonParentId)&lt;br /&gt;
		local taxonRankId = wikidata.getBestEntityIdsList(qTaxonParentId, &amp;#039;P105&amp;#039;) -- taxon rank&lt;br /&gt;
		if taxonRankId and taxonRankId[1] then&lt;br /&gt;
			local qTaxonRankId = StringUtils.prependIfMissing({taxonRankId[1], &amp;#039;Q&amp;#039;})&lt;br /&gt;
			taxonomy[qTaxonRankId] = &amp;#039;[[&amp;#039; .. taxonSitelink .. &amp;#039;|&amp;#039; .. (taxonParentName or qTaxonParentId)  .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		taxonParentIdList = wikidata.getBestEntityIdsList(qTaxonParentId, &amp;#039;P171&amp;#039;) -- parent taxon&lt;br /&gt;
	end&lt;br /&gt;
	return taxonomy&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getNameAndAuthority(qId)&lt;br /&gt;
	local qItem = StringUtils.prependIfMissing({qId, &amp;#039;Q&amp;#039;})&lt;br /&gt;
	local sName = wikidata.findOneValueNoRef(&amp;#039;P225&amp;#039;, qItem)&lt;br /&gt;
	local sClaims = wikidata.findClaimsForProperty(qItem, &amp;#039;P225&amp;#039;)&lt;br /&gt;
	local authors = nil&lt;br /&gt;
	local year = nil&lt;br /&gt;
	local nStatus = nil&lt;br /&gt;
	if sName and sClaims and #sClaims &amp;gt; 0 and sClaims[1].qualifiers then&lt;br /&gt;
		if sClaims[1].qualifiers[&amp;#039;P405&amp;#039;] then&lt;br /&gt;
			local taxonAuthorNamesList = {}&lt;br /&gt;
			for taxonAuthorIdx,taxonAuthorQualifier in ipairs(sClaims[1].qualifiers[&amp;#039;P405&amp;#039;]) do&lt;br /&gt;
				local taxonAuthorCitation = nil&lt;br /&gt;
				if taxonAuthorQualifier.datatype == &amp;#039;wikibase-item&amp;#039; and taxonAuthorQualifier.datavalue.type == &amp;#039;wikibase-entityid&amp;#039; then&lt;br /&gt;
					local taxonAuthorQID = StringUtils.prependIfMissing({tostring(taxonAuthorQualifier.datavalue.value[&amp;#039;numeric-id&amp;#039;]), &amp;#039;Q&amp;#039;})&lt;br /&gt;
					taxonAuthorCitation = wikidata.findOneValueNoRef(&amp;#039;P428&amp;#039;, taxonAuthorQID) -- botanist author abbreviation&lt;br /&gt;
					if taxonAuthorCitation == nil then&lt;br /&gt;
						taxonAuthorCitation = wikidata.findOneValueNoRef(&amp;#039;P835&amp;#039;, taxonAuthorQID) --author citation (zoology)&lt;br /&gt;
					end&lt;br /&gt;
					local taxonAuthorLink = nil&lt;br /&gt;
					if taxonAuthorCitation == nil then&lt;br /&gt;
						taxonAuthorLink = wikidata.printSnak(taxonAuthorQualifier)&lt;br /&gt;
					else &lt;br /&gt;
						taxonAuthorLink = &amp;#039;[[&amp;#039; .. (mw.wikibase.sitelink(taxonAuthorQID) or (&amp;#039;:d:&amp;#039; .. taxonAuthorQID)) .. &amp;#039;|&amp;#039; .. taxonAuthorCitation .. &amp;#039;]]&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					taxonAuthorLink = taxonAuthorLink .. wikidata.outputReferences(taxonAuthorQualifier)&lt;br /&gt;
					table.insert(taxonAuthorNamesList, taxonAuthorLink)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			taxonAuthorNamesList.separator = &amp;#039;, &amp;#039;&lt;br /&gt;
			authors = join(taxonAuthorNamesList)&lt;br /&gt;
		end&lt;br /&gt;
		if sClaims[1].qualifiers[&amp;#039;P574&amp;#039;] and sClaims[1].qualifiers[&amp;#039;P574&amp;#039;][1] then&lt;br /&gt;
		    local d = wikidata.extractDateFromClaim(sClaims[1].qualifiers[&amp;#039;P574&amp;#039;][1])&lt;br /&gt;
		    if d and d.year then year = tostring(d.year) end&lt;br /&gt;
		end&lt;br /&gt;
		if sClaims[1].qualifiers[&amp;#039;P1135&amp;#039;] and sClaims[1].qualifiers[&amp;#039;P1135&amp;#039;][1] then&lt;br /&gt;
			nomStatus = sClaims[1].qualifiers[&amp;#039;P1135&amp;#039;][1]&lt;br /&gt;
		    if nomStatus.datatype == &amp;#039;wikibase-item&amp;#039; and nomStatus.datavalue.type == &amp;#039;wikibase-entityid&amp;#039; then&lt;br /&gt;
		    	local nomStatusQID = StringUtils.prependIfMissing({tostring(nomStatus.datavalue.value[&amp;#039;numeric-id&amp;#039;]), &amp;#039;Q&amp;#039;})&lt;br /&gt;
				nStatus = wikidata.findLinkToItem(nomStatusQID, false, false, true)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local entry = nil&lt;br /&gt;
	if sName then&lt;br /&gt;
		entry = {}&lt;br /&gt;
		entry.name = sName&lt;br /&gt;
		entry.author = authors&lt;br /&gt;
		entry.year = year&lt;br /&gt;
		entry.nomStatus = nStatus&lt;br /&gt;
	end&lt;br /&gt;
	mw.logObject(entry)&lt;br /&gt;
	return entry&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function extractSynonymsFromWikidata()&lt;br /&gt;
	local synonymEntries = nil&lt;br /&gt;
	local synonyms1420 = wikidata.getBestEntityIdsList(nil, &amp;#039;P1420&amp;#039;) -- synonyms&lt;br /&gt;
	local synonyms694 = wikidata.getBestEntityIdsList(nil, &amp;#039;P694&amp;#039;) -- synonyms nom.nov.&lt;br /&gt;
	if synonyms1420 == nil and synonyms694 == nil then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	local synonyms = {}&lt;br /&gt;
	for syn = 1, #synonyms1420 do&lt;br /&gt;
		synonyms[synonyms1420[syn]] = true&lt;br /&gt;
	end&lt;br /&gt;
	for syn = 1, #synonyms694 do&lt;br /&gt;
		synonyms[synonyms694[syn]] = true&lt;br /&gt;
	end&lt;br /&gt;
	local synTableIdx = 1&lt;br /&gt;
	if synonyms then&lt;br /&gt;
		synonymEntries = {}&lt;br /&gt;
		for synonymId,synonymBool in pairs(synonyms) do&lt;br /&gt;
			local synonymEntry = getNameAndAuthority(synonymId)&lt;br /&gt;
			&lt;br /&gt;
			if synonymEntry then &lt;br /&gt;
				synonymEntries[synTableIdx] = synonymEntry &lt;br /&gt;
				synTableIdx = synTableIdx + 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if synonymEntries then&lt;br /&gt;
		table.sort(synonymEntries, function(c1, c2) &lt;br /&gt;
			if c1 and c2 and c1.year and c2.year then &lt;br /&gt;
				if c1.year == c2.year then return c1.name &amp;lt; c2.name end&lt;br /&gt;
				return c1.year &amp;lt; c2.year&lt;br /&gt;
			end&lt;br /&gt;
			if c1 and c1.year then return true end&lt;br /&gt;
			if c2 and c2.year then return false end&lt;br /&gt;
			return c1.name &amp;lt; c2.name&lt;br /&gt;
		end)&lt;br /&gt;
	end&lt;br /&gt;
	return synonymEntries&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function isValueSnak(snak)&lt;br /&gt;
	return snak and snak.snaktype == &amp;#039;value&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function hasValueSnak(claim)&lt;br /&gt;
	return claim and claim.type == &amp;#039;statement&amp;#039; and isValueSnak(claim.mainsnak)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function findImageAndCaption(entityId, propertyId, defaultCaption)&lt;br /&gt;
	local wikidataImages = wikidata.findBestClaimsForProperty(entityId, propertyId)&lt;br /&gt;
	local imageName, imageCaption&lt;br /&gt;
	if wikidataImages and #wikidataImages &amp;gt; 0 then&lt;br /&gt;
		local wikidataImage = wikidataImages[1]&lt;br /&gt;
		if hasValueSnak(wikidataImage) and wikidataImage.mainsnak.datavalue then&lt;br /&gt;
			imageName = wikidataImage.mainsnak.datavalue.value&lt;br /&gt;
			local roDescr = defaultCaption&lt;br /&gt;
			if wikidataImage.qualifiers and wikidataImage.qualifiers[&amp;#039;P2096&amp;#039;] then&lt;br /&gt;
				for _,eachImageDescrLangString in pairs(wikidataImage.qualifiers[&amp;#039;P2096&amp;#039;]) do&lt;br /&gt;
					if isValueSnak(eachImageDescrLangString) and eachImageDescrLangString.datavalue and eachImageDescrLangString.datavalue.value.language == &amp;#039;ro&amp;#039; then&lt;br /&gt;
						roDescr = eachImageDescrLangString.datavalue.value.text or roDescr&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			if roDescr == defaultCaption and wikidataImage.qualifiers and wikidataImage.qualifiers[&amp;#039;P180&amp;#039;] then&lt;br /&gt;
				local subjList = {}&lt;br /&gt;
				for _,eachSubj in pairs(wikidataImage.qualifiers[&amp;#039;P180&amp;#039;]) do&lt;br /&gt;
					subjDescrQID = StringUtils.prependIfMissing({tostring(eachSubj.datavalue.value.id), &amp;#039;Q&amp;#039;})&lt;br /&gt;
					&lt;br /&gt;
					local subjLabel = wikidata.findLabel(subjDescrQID, &amp;#039;ro&amp;#039;)&lt;br /&gt;
					subjDescr = &amp;quot;[[&amp;quot; .. (mw.wikibase.sitelink(subjDescrQID) or (&amp;#039;:d:&amp;#039; .. subjDescrQID)) .. &amp;#039;|&amp;#039; .. StringUtils._capitalize({subjLabel}) .. &amp;quot;]]&amp;quot;&lt;br /&gt;
					if subjLabel == wikidata.findOneValueNoRef(&amp;#039;P225&amp;#039;, subjDescrQID) then&lt;br /&gt;
						subjDescr = &amp;quot;&amp;#039;&amp;#039;&amp;quot; .. subjDescr .. &amp;quot;&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
					end&lt;br /&gt;
&lt;br /&gt;
					table.insert(subjList, subjDescr)&lt;br /&gt;
				end&lt;br /&gt;
				subjList.separator = &amp;#039;, &amp;#039;&lt;br /&gt;
				roDescr = join(subjList) or roDescr&lt;br /&gt;
			end&lt;br /&gt;
			imageCaption = roDescr&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return imageName, imageCaption&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p._displayInfobox = function(args)&lt;br /&gt;
	local ibArgs = { antet = &amp;#039;biota&amp;#039; }&lt;br /&gt;
	if args[&amp;#039;colour&amp;#039;] then ibArgs[&amp;#039;culoare cadru&amp;#039;] = args[&amp;#039;colour&amp;#039;] end&lt;br /&gt;
	local wdLabel = wikidata.findLabel()&lt;br /&gt;
	if wdLabel == wikidata.findOneValueNoRef(&amp;#039;P225&amp;#039;, nil) then&lt;br /&gt;
		wdLabel = &amp;quot;&amp;#039;&amp;#039;&amp;quot; .. wdLabel .. &amp;quot;&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	local title = args[&amp;#039;nume&amp;#039;] or args[&amp;#039;name&amp;#039;] or wdLabel&lt;br /&gt;
	if title == nil or mw.ustring.len(mw.text.trim(title)) == 0 then&lt;br /&gt;
		title = mw.title.getCurrentTitle().text&lt;br /&gt;
	end&lt;br /&gt;
	if args[&amp;#039;temporal_range&amp;#039;] then&lt;br /&gt;
		title = title .. tostring(mw.html.create(&amp;#039;br&amp;#039;)) .. tostring(mw.html.create(&amp;#039;small&amp;#039;):wikitext(&amp;#039;Fosilă: &amp;#039; .. args[&amp;#039;temporal_range&amp;#039;]))&lt;br /&gt;
	end&lt;br /&gt;
	ibArgs[&amp;#039;title&amp;#039;] = StringUtils._capitalize({title})&lt;br /&gt;
	local img = {}&lt;br /&gt;
	if args[&amp;#039;image&amp;#039;] then &lt;br /&gt;
		img[1] = args[&amp;#039;image&amp;#039;]&lt;br /&gt;
		ibArgs[&amp;#039;image&amp;#039;] = infoboxImage{image=img[1], sizedefault=&amp;#039;280px&amp;#039;, upright=&amp;#039;1&amp;#039;, alt=args[&amp;#039;image_alt&amp;#039;]} &lt;br /&gt;
		ibArgs[&amp;#039;caption&amp;#039;] = args[&amp;#039;image_caption&amp;#039;]&lt;br /&gt;
	else&lt;br /&gt;
		imagewd, captionwd = findImageAndCaption(nil, &amp;#039;P18&amp;#039;, nil)&lt;br /&gt;
		img[1] = imagewd&lt;br /&gt;
		ibArgs[&amp;#039;image&amp;#039;] = infoboxImage{image=img[1], sizedefault=&amp;#039;280px&amp;#039;, upright=&amp;#039;1&amp;#039;, alt=args[&amp;#039;image_alt&amp;#039;]} &lt;br /&gt;
		ibArgs[&amp;#039;caption&amp;#039;] = captionwd&lt;br /&gt;
	end&lt;br /&gt;
	img[2] = args[&amp;#039;image2&amp;#039;]&lt;br /&gt;
	if img[2] then ibArgs[&amp;#039;image2&amp;#039;] = infoboxImage{image=img[2], sizedefault=&amp;#039;280px&amp;#039;, upright=&amp;#039;1&amp;#039;, alt=args[&amp;#039;image2_alt&amp;#039;]} end&lt;br /&gt;
	ibArgs[&amp;#039;caption2&amp;#039;] = args[&amp;#039;image2_caption&amp;#039;]&lt;br /&gt;
	&lt;br /&gt;
	local entryIndex = 1&lt;br /&gt;
	local statusDescriptions = nil&lt;br /&gt;
	if args[&amp;#039;status&amp;#039;] and args[&amp;#039;status_system&amp;#039;] then&lt;br /&gt;
		statusDescriptions = extractStatusFromArgs(args)&lt;br /&gt;
	else&lt;br /&gt;
		statusDescriptions = extractStatusFromWikidata()&lt;br /&gt;
	end&lt;br /&gt;
	if statusDescriptions and #statusDescriptions &amp;gt; 0 then&lt;br /&gt;
		ibArgs[&amp;#039;header&amp;#039; .. tostring(entryIndex)] = &amp;#039;[[Stare de conservare]]&amp;#039;&lt;br /&gt;
		entryIndex = entryIndex + 1&lt;br /&gt;
		for statDescIdx=1,#statusDescriptions,1 do&lt;br /&gt;
			ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = statusDescriptions[statDescIdx]&lt;br /&gt;
			entryIndex = entryIndex + 1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local taxonomy = extractTaxonomyFromArgs(args)&lt;br /&gt;
	if taxonomy == nil or #taxonomy == 0 then&lt;br /&gt;
		taxonomy = extractTaxonomyFromWikidata()&lt;br /&gt;
	end&lt;br /&gt;
	if taxonomy then&lt;br /&gt;
		ibArgs[&amp;#039;header&amp;#039; .. tostring(entryIndex)] = &amp;#039;[[Clasificare științifică]]&amp;#039;&lt;br /&gt;
		entryIndex = entryIndex + 1&lt;br /&gt;
		&lt;br /&gt;
		for _k,eachTaxonOrder in pairs(taxonorder) do&lt;br /&gt;
			if taxonomy[eachTaxonOrder] then&lt;br /&gt;
				ibArgs[&amp;#039;label&amp;#039; .. tostring(entryIndex)] = &amp;#039;[[&amp;#039; .. (mw.wikibase.sitelink(eachTaxonOrder) or (&amp;#039;:d:&amp;#039; .. eachTaxonOrder)) .. &amp;#039;|&amp;#039; .. StringUtils.capitalize({wikidata.findLabel(eachTaxonOrder)}) .. &amp;#039;]]&amp;#039;&lt;br /&gt;
				ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = taxonomy[eachTaxonOrder]&lt;br /&gt;
				entryIndex = entryIndex + 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if taxonomy.name then&lt;br /&gt;
			if taxonomy.qrank == &amp;#039;Q7432&amp;#039; then&lt;br /&gt;
				ibArgs[&amp;#039;header&amp;#039; .. tostring(entryIndex)] = &amp;#039;[[Nume binomial]]&amp;#039;&lt;br /&gt;
			else&lt;br /&gt;
				if taxonomy.qrank then&lt;br /&gt;
					ibArgs[&amp;#039;header&amp;#039; .. tostring(entryIndex)] = &amp;#039;[[&amp;#039; .. (mw.wikibase.sitelink(taxonomy.qrank) or (&amp;#039;:d:&amp;#039; .. taxonomy.qrank)) .. &amp;#039;|&amp;#039; .. StringUtils.capitalize({wikidata.findLabel(taxonomy.qrank)}) .. &amp;#039;]]&amp;#039;&lt;br /&gt;
				else&lt;br /&gt;
					ibArgs[&amp;#039;header&amp;#039; .. tostring(entryIndex)] = &amp;#039;Rang necunoscut&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
			end				&lt;br /&gt;
			entryIndex = entryIndex + 1&lt;br /&gt;
			ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = &amp;quot;&amp;#039;&amp;#039;&amp;#039;&amp;quot; .. tostring(mw.html.create(&amp;#039;span&amp;#039;):addClass(&amp;#039;binomial&amp;#039;):wikitext(taxonomy.name)) .. &amp;quot;&amp;#039;&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
			entryIndex = entryIndex + 1&lt;br /&gt;
			if taxonomy.author then&lt;br /&gt;
				ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = tostring(tostring(mw.html.create(&amp;#039;small&amp;#039;):wikitext(join({taxonomy.author, taxonomy.publicationDate, separator = &amp;#039;, &amp;#039;}))))&lt;br /&gt;
				entryIndex = entryIndex + 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	taxonomicTypes = wikidata.getBestEntityIdsList(nil, &amp;#039;P427&amp;#039;) &lt;br /&gt;
	if taxonomicTypes and #taxonomicTypes &amp;gt; 0 then&lt;br /&gt;
		for typeIdx,taxonomicType in ipairs(taxonomicTypes) do&lt;br /&gt;
			local qType = StringUtils.prependIfMissing({taxonomicType, &amp;#039;Q&amp;#039;})&lt;br /&gt;
			local taxType = getNameAndAuthority(qType)&lt;br /&gt;
			if taxType then&lt;br /&gt;
				ibArgs[&amp;#039;header&amp;#039; .. tostring(entryIndex)] = &amp;#039;Tip taxonomic&amp;#039;&lt;br /&gt;
				entryIndex = entryIndex + 1&lt;br /&gt;
				ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = &amp;quot;&amp;#039;&amp;#039;[[&amp;quot; .. (mw.wikibase.sitelink(qType) or (&amp;#039;:d:&amp;#039; .. qType)) .. &amp;#039;|&amp;#039; .. taxType.name .. &amp;quot;]]&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
				if taxType.author then&lt;br /&gt;
					ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] .. &amp;#039; &amp;#039; .. tostring(tostring(mw.html.create(&amp;#039;small&amp;#039;):wikitext(join({taxType.author, taxType.year, separator = &amp;#039;, &amp;#039;}))))&lt;br /&gt;
				end&lt;br /&gt;
				if taxType.nomStatus then&lt;br /&gt;
					ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] .. &amp;#039; &amp;#039; .. tostring(tostring(mw.html.create(&amp;#039;small&amp;#039;):wikitext(&amp;#039;(&amp;#039; .. taxType.nomStatus .. &amp;#039;)&amp;#039;)))&lt;br /&gt;
				end&lt;br /&gt;
				entryIndex = entryIndex + 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local rangeMap = args[&amp;#039;range_map&amp;#039;]&lt;br /&gt;
	if rangeMap then&lt;br /&gt;
		ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = infoboxImage{image=rangeMap, sizedefault=&amp;#039;280px&amp;#039;, upright=&amp;#039;1&amp;#039;, alt=args[&amp;#039;image_alt&amp;#039;]}&lt;br /&gt;
		entryIndex = entryIndex + 1&lt;br /&gt;
	else&lt;br /&gt;
		rangeMap, rangeCaption = findImageAndCaption(nil, &amp;#039;P181&amp;#039;, &amp;#039;Areal de răspândire&amp;#039;)&lt;br /&gt;
		if rangeMap then&lt;br /&gt;
			ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = infoboxImage{image=rangeMap, sizedefault=&amp;#039;280px&amp;#039;, upright=&amp;#039;1&amp;#039;}&lt;br /&gt;
			entryIndex = entryIndex + 1&lt;br /&gt;
			ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = rangeCaption&lt;br /&gt;
			entryIndex = entryIndex + 1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local synonymEntries = extractSynonymsFromWikidata()&lt;br /&gt;
	if synonymEntries and #synonymEntries &amp;gt; 0 then&lt;br /&gt;
		ibArgs[&amp;#039;header&amp;#039; .. tostring(entryIndex)] = &amp;#039;Sinonime&amp;#039;&lt;br /&gt;
		entryIndex = entryIndex + 1&lt;br /&gt;
		for synIdx=1,#synonymEntries,1 do&lt;br /&gt;
			local entry = synonymEntries[synIdx]&lt;br /&gt;
			local synonymData = &amp;quot;&amp;#039;&amp;#039;&amp;quot; .. entry.name .. &amp;quot;&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
			if entry.author then&lt;br /&gt;
				synonymData = synonymData .. &amp;#039; &amp;#039; .. tostring(mw.html.create(&amp;#039;small&amp;#039;):wikitext(join({entry.author, entry.year, separator = &amp;#039;, &amp;#039;})))&lt;br /&gt;
			end&lt;br /&gt;
	        if entry.nomStatus then&lt;br /&gt;
				synonymData = synonymData .. &amp;#039; &amp;#039; .. tostring(mw.html.create(&amp;#039;small&amp;#039;):wikitext(&amp;#039;(&amp;#039; .. entry.nomStatus .. &amp;#039;)&amp;#039;))&lt;br /&gt;
	        end&lt;br /&gt;
			ibArgs[&amp;#039;data&amp;#039; .. tostring(entryIndex)] = synonymData&lt;br /&gt;
			entryIndex = entryIndex + 1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	ibArgs.doc = &amp;#039;Taxobox-wd&amp;#039;&lt;br /&gt;
	ibArgs.wikidata = &amp;#039;y&amp;#039;&lt;br /&gt;
	return infobox._infobox(ibArgs)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.infobox = function(frame)&lt;br /&gt;
	local args = getArgs(frame)&lt;br /&gt;
	return p._displayInfobox(args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Ana Vornic</name></author>
	</entry>
</feed>