<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="nb">
	<id>https://www.wikisida.no/index.php?action=history&amp;feed=atom&amp;title=Modul%3AAuthority_control</id>
	<title>Modul:Authority control - Sideversjonshistorikk</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikisida.no/index.php?action=history&amp;feed=atom&amp;title=Modul%3AAuthority_control"/>
	<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Modul:Authority_control&amp;action=history"/>
	<updated>2026-06-01T14:15:40Z</updated>
	<subtitle>Versjonshistorikk for denne siden på wikien</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://www.wikisida.no/index.php?title=Modul:Authority_control&amp;diff=219613&amp;oldid=prev</id>
		<title>Wikisida: Én sideversjon ble importert</title>
		<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Modul:Authority_control&amp;diff=219613&amp;oldid=prev"/>
		<updated>2026-06-01T05:54:37Z</updated>

		<summary type="html">&lt;p&gt;Én sideversjon ble importert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;nb&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Eldre sideversjon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Sideversjonen fra 1. jun. 2026 kl. 05:54&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;nb&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Ingen forskjell)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key c1wiki:diff:1.41:old-219612:rev-219613 --&gt;
&lt;/table&gt;</summary>
		<author><name>Wikisida</name></author>
	</entry>
	<entry>
		<id>https://www.wikisida.no/index.php?title=Modul:Authority_control&amp;diff=219612&amp;oldid=prev</id>
		<title>nb&gt;1000mm: Tilbakestilling</title>
		<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Modul:Authority_control&amp;diff=219612&amp;oldid=prev"/>
		<updated>2025-02-26T14:09:00Z</updated>

		<summary type="html">&lt;p&gt;Tilbakestilling&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ny side&lt;/b&gt;&lt;/p&gt;&lt;div&gt;require(&amp;#039;strict&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
--local function freebaseLink( id )&lt;br /&gt;
--	return &amp;#039;https://www.freebase.com&amp;#039; .. id &lt;br /&gt;
--end&lt;br /&gt;
&lt;br /&gt;
local function viafLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^%d+$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;https://viaf.org/viaf/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function kulturnavLink( id )&lt;br /&gt;
	return &amp;#039;http://kulturnav.org/language/no/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function geonamesLink( id )&lt;br /&gt;
	return &amp;#039;http://sws.geonames.org/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function ssrnameLink( id )&lt;br /&gt;
	return &amp;#039;http://faktaark.statkart.no/SSRFakta/faktaarkfraobjektid?enhet=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function naturbaseLink( id )&lt;br /&gt;
	return &amp;#039;http://faktaark.naturbase.no/?id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function catholicdioceseLink( id )&lt;br /&gt;
	return &amp;#039;http://www.catholic-hierarchy.org/diocese/d&amp;#039; .. id .. &amp;#039;.html&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function skyscraperLink( id )&lt;br /&gt;
	return &amp;#039;http://www.skyscrapercenter.com/building.php?building_id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function bbcthingsLink( id )&lt;br /&gt;
	return &amp;#039;http://www.bbc.co.uk/things/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function brorgnrLink( id )&lt;br /&gt;
	return &amp;#039;http://w2.brreg.no/enhet/sok/detalj.jsp?orgnr=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function unescolangLink( id )&lt;br /&gt;
	return &amp;#039;http://www.unesco.org/languages-atlas/en/atlasmap/language-id-&amp;#039; .. id .. &amp;#039;.html&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--local function heritagenorLink( id )&lt;br /&gt;
--	return &amp;#039;http://www.kulturminnesok.no/kulturminnesok/kulturminne/?LOK_ID=&amp;#039; .. id&lt;br /&gt;
--end&lt;br /&gt;
&lt;br /&gt;
local function munzingersportLink( id )&lt;br /&gt;
	return &amp;#039;http://www.munzinger.de/search/go/document.jsp?id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function munzingeribaLink( id )&lt;br /&gt;
	return &amp;#039;http://www.munzinger.de/search/go/document.jsp?id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function munzingersportLink( id )&lt;br /&gt;
	return &amp;#039;http://www.munzinger.de/search/go/document.jsp?id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function munzingerpopLink( id )&lt;br /&gt;
	return &amp;#039;http://www.munzinger.de/search/go/document.jsp?id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function musicbrainzartistLink( id )&lt;br /&gt;
	return &amp;#039;https://musicbrainz.org/artist/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function musicbrainzreleasegroupLink( id )&lt;br /&gt;
	return &amp;#039;https://musicbrainz.org/release-group/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function musicbrainzlabelLink( id )&lt;br /&gt;
	return &amp;#039;https://musicbrainz.org/label/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function musicbrainzareaLink( id )&lt;br /&gt;
	return &amp;#039;https://musicbrainz.org/area/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function discogsartistLink( id )&lt;br /&gt;
	return &amp;#039;http://www.discogs.com/artist/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function allmusicartistLink( id )&lt;br /&gt;
	return &amp;#039;http://www.allmusic.com/artist/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function sikartLink( id )&lt;br /&gt;
	return &amp;#039;http://www.sikart.ch/KuenstlerInnen.aspx?id=&amp;#039; .. id .. &amp;#039;&amp;amp;lng=en&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function tlsLink( id )&lt;br /&gt;
	local id2 = mw.ustring.gsub(id, &amp;#039;%s&amp;#039;, function(s) return mw.uri.encode(s, &amp;#039;WIKI&amp;#039;) end)&lt;br /&gt;
	return &amp;#039;http://tls.theaterwissenschaft.ch/wiki/&amp;#039; .. id2&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function ciniiLink( id )&lt;br /&gt;
	return &amp;#039;http://ci.nii.ac.jp/author/&amp;#039; .. id .. &amp;#039;?l=en&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function bneLink( id )&lt;br /&gt;
	return &amp;#039;http://catalogo.bne.es/uhtbin/authoritybrowse.cgi?action=display&amp;amp;authority_id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function uscongressLink( id )&lt;br /&gt;
	return &amp;#039;http://bioguide.congress.gov/scripts/biodisplay.pl?index=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function narapersonLink( id )&lt;br /&gt;
	return &amp;#039;http://research.archives.gov/person/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function naraorganizationLink( id )&lt;br /&gt;
	return &amp;#039;http://research.archives.gov/organization/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function botanistLink( id )&lt;br /&gt;
	local id2 = mw.ustring.gsub(id, &amp;#039;%s&amp;#039;, function(s) return mw.uri.encode(s, &amp;#039;PATH&amp;#039;) end)&lt;br /&gt;
	return &amp;#039;http://www.ipni.org/ipni/advAuthorSearch.do?find_abbreviation=&amp;#039; .. id2&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function mgpLink( id )&lt;br /&gt;
	-- TODO Implement some sanity checking regex&lt;br /&gt;
	return &amp;#039;http://www.genealogy.ams.org/id.php?id=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function rslLink( id )&lt;br /&gt;
	-- TODO Implement some sanity checking regex&lt;br /&gt;
	return &amp;#039;http://aleph.rsl.ru/F?func=find-b&amp;amp;find_code=SYS&amp;amp;adjacent=Y&amp;amp;local_base=RSL11&amp;amp;request=&amp;#039; .. id .. &amp;#039;&amp;amp;CON_LNG=ENG&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function leonoreLink( id )&lt;br /&gt;
-- Identifiants allant de LH/1/1 à LH/2794/54 (légionnaires)&lt;br /&gt;
-- Identifiants allant de C/0/1 à C/0/84 (84 légionnaires célèbres)&lt;br /&gt;
-- Identifiants allant de 19800035/1/1 à 19800035/385/51670 (légionnaires décédés entre 1954 et 1977, et quelques dossiers de légionnaires décédés avant 1954)&lt;br /&gt;
	if not string.match( id, &amp;#039;^LH/%d%d?%d?%d?/%d%d?%d?$&amp;#039; ) and&lt;br /&gt;
	   not string.match( id, &amp;#039;^C/0/%d%d?$&amp;#039; ) and&lt;br /&gt;
	   not string.match( id, &amp;#039;^19800035/%d%d?%d?%d?/%d%d?%d?%d?%d?$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;//www.culture.gouv.fr/public/mistral/leonore_fr?ACTION=CHERCHER&amp;amp;FIELD_1=COTE&amp;amp;VALUE_1=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function sbnLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^IT\\ICCU\\%d%d%d%d%d%d%d%d%d%d$&amp;#039; ) and not string.match( id, &amp;#039;^IT\\ICCU\\%u%u[%d%u]%u\\%d%d%d%d%d%d$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;http://opac.sbn.it/opacsbn/opac/iccu/scheda_authority.jsp?bid=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function nkcLink( id )&lt;br /&gt;
	return &amp;#039;http://aleph.nkp.cz/F/?func=find-c&amp;amp;local_base=aut&amp;amp;ccl_term=ica=&amp;#039; .. id .. &amp;#039;&amp;amp;CON_LNG=ENG&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function nclLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^%d+$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;http://aleweb.ncl.edu.tw/F/?func=accref&amp;amp;acc_sequence=&amp;#039; .. id .. &amp;#039;&amp;amp;CON_LNG=ENG&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function ndlLink( id )&lt;br /&gt;
	return &amp;#039;http://id.ndl.go.jp/auth/ndlna/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function sudocLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^%d%d%d%d%d%d%d%d[%dxX]$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;http://www.idref.fr/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function hlsLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^%d+$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;http://www.hls-dhs-dss.ch/textes/f/F&amp;#039; .. id .. &amp;#039;.php&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function lirLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^%d+$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;http://www.e-lir.ch/e-LIR___Lexicon.&amp;#039; .. id .. &amp;#039;.450.0.html&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function splitLccn( id )&lt;br /&gt;
	if id:match( &amp;#039;^%l%l?%l?%d%d%d%d%d%d%d%d%d?%d?$&amp;#039; ) then&lt;br /&gt;
		id = id:gsub( &amp;#039;^(%l+)(%d+)(%d%d%d%d%d%d)$&amp;#039;, &amp;#039;%1/%2/%3&amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	if id:match( &amp;#039;^%l%l?%l?/%d%d%d?%d?/%d+$&amp;#039; ) then&lt;br /&gt;
		 return mw.text.split( id, &amp;#039;/&amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function append(str, c, length)&lt;br /&gt;
	while str:len() &amp;lt; length do&lt;br /&gt;
		str = c .. str&lt;br /&gt;
	end&lt;br /&gt;
	return str&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function lccnLink( id )&lt;br /&gt;
	local parts = splitLccn( id )&lt;br /&gt;
	if not parts then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	local lccnType = parts[1] ~= &amp;#039;sh&amp;#039; and &amp;#039;names&amp;#039; or &amp;#039;subjects&amp;#039;&lt;br /&gt;
	id = parts[1] .. parts[2] .. append( parts[3], &amp;#039;0&amp;#039;, 6 )&lt;br /&gt;
	return &amp;#039;http://id.loc.gov/authorities/&amp;#039; .. lccnType .. &amp;#039;/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function cristinLink( id )&lt;br /&gt;
	return &amp;#039;http://www.cristin.no/as/WebObjects/cristin.woa/wa/personVis?type=PERSON&amp;amp;action=sok&amp;amp;pnr=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--local function mbLink( id )&lt;br /&gt;
--	-- TODO Implement some sanity checking regex&lt;br /&gt;
--	return &amp;#039;//musicbrainz.org/artist/&amp;#039; .. id&lt;br /&gt;
--end&lt;br /&gt;
&lt;br /&gt;
--Returns the ISNI check digit isni must be a string where the 15 first elements are digits&lt;br /&gt;
local function getIsniCheckDigit( isni )&lt;br /&gt;
	local total = 0&lt;br /&gt;
	for i = 1, 15 do&lt;br /&gt;
		local digit = isni:byte( i ) - 48 --Get integer value&lt;br /&gt;
		total = (total + digit) * 2&lt;br /&gt;
	end&lt;br /&gt;
	local remainder = total % 11&lt;br /&gt;
	local result = (12 - remainder) % 11&lt;br /&gt;
	if result == 10 then&lt;br /&gt;
		return &amp;quot;X&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	return tostring( result )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--Validate ISNI (and ORCID) and retuns it as a 16 characters string or returns false if it&amp;#039;s invalid&lt;br /&gt;
--See http://support.orcid.org/knowledgebase/articles/116780-structure-of-the-orcid-identifier&lt;br /&gt;
local function validateIsni( id )&lt;br /&gt;
	id = id:gsub( &amp;#039;[ %-]&amp;#039;, &amp;#039;&amp;#039; ):upper()&lt;br /&gt;
	if not id:match( &amp;#039;^%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d[%dX]$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	if getIsniCheckDigit( id ) ~= string.char( id:byte( 16 ) ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function isniLink( id )&lt;br /&gt;
	id = validateIsni( id )&lt;br /&gt;
	if not id then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;http://isni.org/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function orcidLink( id )&lt;br /&gt;
	id = validateIsni( id )&lt;br /&gt;
	if not id then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	id = id:sub( 1, 4 ) .. &amp;#039;-&amp;#039; .. id:sub( 5, 8 ) .. &amp;#039;-&amp;#039;  .. id:sub( 9, 12 ) .. &amp;#039;-&amp;#039;  .. id:sub( 13, 16 )&lt;br /&gt;
	return &amp;#039;http://orcid.org/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function gndLink( id )&lt;br /&gt;
	return &amp;#039;http://d-nb.info/gnd/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function selibrLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^%d+$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;//libris.kb.se/auth/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function bnfLink( id )&lt;br /&gt;
	--Add cb prefix if it has been removed&lt;br /&gt;
	if not string.match( id, &amp;#039;^cb.+$&amp;#039; ) then&lt;br /&gt;
		id = &amp;#039;cb&amp;#039; .. id&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return &amp;#039;http://catalogue.bnf.fr/ark:/12148/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function bnfLink2( id )&lt;br /&gt;
	--Add cb prefix if it has been removed&lt;br /&gt;
	if not string.match( id, &amp;#039;^cb.+$&amp;#039; ) then&lt;br /&gt;
		id = &amp;#039;cb&amp;#039; .. id&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return &amp;#039;http://data.bnf.fr/ark:/12148/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function bpnLink( id )&lt;br /&gt;
	if not string.match( id, &amp;#039;^%d+$&amp;#039; ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return &amp;#039;http://www.biografischportaal.nl/en/persoon/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function ridLink( id )&lt;br /&gt;
	return &amp;#039;http://www.researcherid.com/rid/&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function bibsysLink( id )&lt;br /&gt;
	-- return &amp;#039;http://ask.bibsys.no/ask/action/result?cmd=&amp;amp;kilde=biblio&amp;amp;cql=bs.autid+%3D+&amp;#039; .. id .. &amp;#039;&amp;amp;feltselect=bs.autid&amp;#039;&lt;br /&gt;
	return &amp;#039;http://bibsys-almaprimo.hosted.exlibrisgroup.com/primo_library/libweb/action/dlSearch.do?institution=BIBSYS&amp;amp;vid=BIBSYS&amp;amp;search_scope=blended_scope&amp;amp;query=lsr39,exact,&amp;#039; .. id:gsub(&amp;#039;^x0*&amp;#039;, &amp;#039;&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function ulanLink( id )&lt;br /&gt;
	return &amp;#039;//www.getty.edu/vow/ULANFullDisplay?find=&amp;amp;role=&amp;amp;nation=&amp;amp;subjectid=&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function nlaLink( id )&lt;br /&gt;
	return &amp;#039;//nla.gov.au/anbd.aut-an&amp;#039; .. id&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getIdsFromWikidata( item, property )&lt;br /&gt;
	local ids = {}&lt;br /&gt;
	if not item.claims[property] then&lt;br /&gt;
		return ids&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;
			table.insert( ids, statement.mainsnak.datavalue.value )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return ids&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function matchesWikidataRequirements( item, reqs )&lt;br /&gt;
	for _, group in pairs( reqs ) do&lt;br /&gt;
		local property = &amp;#039;p&amp;#039; .. group[1]&lt;br /&gt;
		local qid = group[2]&lt;br /&gt;
		if item.claims[property] ~= nil then&lt;br /&gt;
			for _, statement in pairs ( item.claims[property] ) do&lt;br /&gt;
				if statement.mainsnak.datavalue ~= nil then&lt;br /&gt;
					if statement.mainsnak.datavalue.value[&amp;#039;numeric-id&amp;#039;] == qid then&lt;br /&gt;
						return true&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function createRow( id, label, rawValue, link )&lt;br /&gt;
	if link then&lt;br /&gt;
		return &amp;#039;* [&amp;#039; .. link .. &amp;#039; &amp;#039; .. label .. &amp;#039;]\n&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;#039;* &amp;lt;span class=&amp;quot;error&amp;quot;&amp;gt;&amp;#039; .. id .. &amp;#039;-identifikatoren &amp;#039; .. rawValue .. &amp;#039; er ikke gyldig.&amp;lt;/span&amp;gt;[[Kategori:Artikler med feilaktige autoritetsdata]]\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--In this order: name of the parameter, label, propertyId in Wikidata, formatting function&lt;br /&gt;
local conf = {&lt;br /&gt;
	{ &amp;#039;BIBSYS&amp;#039;, &amp;#039;BIBSYS&amp;#039;, 1015, bibsysLink },&lt;br /&gt;
	{ &amp;#039;VIAF&amp;#039;, &amp;#039;VIAF&amp;#039;, 214, viafLink },&lt;br /&gt;
	{ &amp;#039;GND&amp;#039;, &amp;#039;GND&amp;#039;, 227, gndLink },&lt;br /&gt;
	{ &amp;#039;LCCN&amp;#039;, &amp;#039;LCCN&amp;#039;, 244, lccnLink },&lt;br /&gt;
	{ &amp;#039;ISNI&amp;#039;, &amp;#039;ISNI&amp;#039;, 213, isniLink },&lt;br /&gt;
	{ &amp;#039;BNF&amp;#039;, &amp;#039;BNF&amp;#039;, 268, bnfLink },&lt;br /&gt;
	{ &amp;#039;BNF2&amp;#039;, &amp;#039;BNF (data)&amp;#039;, 268, bnfLink2 },&lt;br /&gt;
	--{ &amp;#039;MBA&amp;#039;, &amp;#039;MusicBrainz&amp;#039;, 434, mbLink },&lt;br /&gt;
	{ &amp;#039;ORCID&amp;#039;, &amp;#039;ORCID&amp;#039;, 496, orcidLink },&lt;br /&gt;
	{ &amp;#039;SELIBR&amp;#039;, &amp;#039;LIBRIS&amp;#039;, 906, selibrLink },&lt;br /&gt;
	{ &amp;#039;SUDOC&amp;#039;, &amp;#039;SUDOC&amp;#039;, 269, sudocLink },	&lt;br /&gt;
	{ &amp;#039;BPN&amp;#039;, &amp;#039;BPN&amp;#039;, 651, bpnLink },&lt;br /&gt;
	{ &amp;#039;RID&amp;#039;, &amp;#039;ResearcherID&amp;#039;, 1053, ridLink },&lt;br /&gt;
	{ &amp;#039;ULAN&amp;#039;, &amp;#039;ULAN&amp;#039;, 245, ulanLink },&lt;br /&gt;
	{ &amp;#039;HDS&amp;#039;, &amp;#039;HDS&amp;#039;, 902, hlsLink },&lt;br /&gt;
	{ &amp;#039;LIR&amp;#039;, &amp;#039;LIR&amp;#039;, 886, lirLink },&lt;br /&gt;
	{ &amp;#039;MGP&amp;#039;, &amp;#039;MGP&amp;#039;, 549, mgpLink },	&lt;br /&gt;
	{ &amp;#039;NLA&amp;#039;, &amp;#039;NLA&amp;#039;, 409, nlaLink },&lt;br /&gt;
	{ &amp;#039;NDL&amp;#039;, &amp;#039;NDL&amp;#039;, 349, ndlLink },&lt;br /&gt;
	{ &amp;#039;NCL&amp;#039;, &amp;#039;NCL&amp;#039;, 1048, nclLink },&lt;br /&gt;
	{ &amp;#039;NKC&amp;#039;, &amp;#039;NKC&amp;#039;, 691, nkcLink },&lt;br /&gt;
	{ &amp;#039;Léonore&amp;#039;, &amp;#039;Léonore&amp;#039;, 640, leonoreLink }, &lt;br /&gt;
	{ &amp;#039;SBN&amp;#039;, &amp;#039;ICCU&amp;#039;, 396, sbnLink },	 &lt;br /&gt;
	{ &amp;#039;RLS&amp;#039;, &amp;#039;RLS&amp;#039;, 947, rslLink },&lt;br /&gt;
	{ &amp;#039;Botanist&amp;#039;, &amp;#039;Botanist&amp;#039;, 428, botanistLink },&lt;br /&gt;
	{ &amp;#039;NARA-person&amp;#039;, &amp;#039;NARA&amp;#039;, 1222, narapersonLink },&lt;br /&gt;
	{ &amp;#039;NARA-organization&amp;#039;, &amp;#039;NARA&amp;#039;, 1223, naraorganizationLink },&lt;br /&gt;
	{ &amp;#039;USCongress&amp;#039;, &amp;#039;US Congress&amp;#039;, 1157, uscongressLink },&lt;br /&gt;
	{ &amp;#039;BNE&amp;#039;, &amp;#039;BNE&amp;#039;, 950, bneLink },&lt;br /&gt;
	{ &amp;#039;CINII&amp;#039;, &amp;#039;CiNii&amp;#039;, 271, ciniiLink },&lt;br /&gt;
	{ &amp;#039;TLS&amp;#039;, &amp;#039;TLS&amp;#039;, 1362, tlsLink },&lt;br /&gt;
	{ &amp;#039;SIKART&amp;#039;, &amp;#039;SIKART&amp;#039;, 781, sikartLink },&lt;br /&gt;
--	{ &amp;#039;FREEBASE&amp;#039;, &amp;#039;Freebase&amp;#039;, 646, freebaseLink },&lt;br /&gt;
	{ &amp;#039;KULTURNAV&amp;#039;, &amp;#039;KulturNav&amp;#039;, 1248, kulturnavLink },&lt;br /&gt;
	{ &amp;#039;CRISTIN&amp;#039;, &amp;#039;CRIStin&amp;#039;, 2287, cristinLink },&lt;br /&gt;
	{ &amp;#039;GEONAMES&amp;#039;, &amp;#039;GeoNames&amp;#039;, 1566, geonamesLink },&lt;br /&gt;
	{ &amp;#039;SSRNAME&amp;#039;, &amp;#039;SSR (navn)&amp;#039;, 1850, ssrnameLink },&lt;br /&gt;
	{ &amp;#039;NATURBASE&amp;#039;, &amp;#039;Naturbase&amp;#039;, 1732, naturbaseLink },&lt;br /&gt;
	{ &amp;#039;CATHOLICDIOC&amp;#039;, &amp;#039;CatolicDiocese&amp;#039;, 1866, catholicdioceseLink },&lt;br /&gt;
	{ &amp;#039;SKYSCRAPER&amp;#039;, &amp;#039;SkyscraperCenter&amp;#039;, 1305, skyscraperLink },&lt;br /&gt;
	{ &amp;#039;BBCTHINGS&amp;#039;, &amp;#039;BBC Things&amp;#039;, 1617, bbcthingsLink },&lt;br /&gt;
	{ &amp;#039;BRORGNR&amp;#039;, &amp;#039;BR orgnr&amp;#039;, 2333, brorgnrLink },&lt;br /&gt;
	{ &amp;#039;UNESCOLANG&amp;#039;, &amp;#039;UNESCO lang&amp;#039;, 2355, unescolangLink },&lt;br /&gt;
--	{ &amp;#039;HERITAGENOR&amp;#039;, &amp;#039;Riksantikvaren (nor)&amp;#039;, 758, heritagenorLink },&lt;br /&gt;
	{ &amp;#039;MUNZINGERIBA&amp;#039;, &amp;#039;Munzinger (iba)&amp;#039;, 1284, munzingeribaLink },&lt;br /&gt;
	{ &amp;#039;MUNZINGERSPORT&amp;#039;, &amp;#039;Munzinger (sport)&amp;#039;, 1285, munzingersportLink },&lt;br /&gt;
	{ &amp;#039;MUNZINGERPOP&amp;#039;, &amp;#039;Munzinger (pop)&amp;#039;, 1286, munzingerpopLink },&lt;br /&gt;
	{ &amp;#039;MUSICBRAINZARTIST&amp;#039;, &amp;#039;MusicBrainz (artist)&amp;#039;, 434, musicbrainzartistLink },&lt;br /&gt;
	{ &amp;#039;MUSICBRAINZGROUP&amp;#039;, &amp;#039;MusicBrainz (release-group)&amp;#039;, 436, musicbrainzreleasegroupLink },&lt;br /&gt;
	{ &amp;#039;MUSICBRAINZLABEL&amp;#039;, &amp;#039;MusicBrainz (label)&amp;#039;, 966, musicbrainzlabelLink },&lt;br /&gt;
	{ &amp;#039;MUSICBRAINZAREA&amp;#039;, &amp;#039;MusicBrainz (area)&amp;#039;, 982, musicbrainzareaLink },&lt;br /&gt;
	{ &amp;#039;DISCOGSARTIST&amp;#039;, &amp;#039;Discogs (artist)&amp;#039;, 1953, discogsartistLink },&lt;br /&gt;
	{ &amp;#039;ALLMUSICARTIST&amp;#039;, &amp;#039;AllMusic (artist)&amp;#039;, 1728, allmusicartistLink },&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Check that the Wikidata item has this property--&amp;gt;value before adding it&lt;br /&gt;
local reqs = {}&lt;br /&gt;
reqs[&amp;#039;MBA&amp;#039;] = {&lt;br /&gt;
	{ 106, 177220 }, -- occupation -&amp;gt; singer&lt;br /&gt;
	{ 31, 177220 }, -- instance of -&amp;gt; singer&lt;br /&gt;
	{ 106, 13385019 }, -- occupation -&amp;gt; rapper&lt;br /&gt;
	{ 31, 13385019 }, -- instance of -&amp;gt; rapper&lt;br /&gt;
	{ 106, 639669 }, -- occupation -&amp;gt; musician&lt;br /&gt;
	{ 31, 639669 }, -- instance of -&amp;gt; musician&lt;br /&gt;
	{ 106, 36834 }, -- occupation -&amp;gt; composer&lt;br /&gt;
	{ 31, 36834 }, -- instance of -&amp;gt; composer&lt;br /&gt;
	{ 106, 488205 }, -- occupation -&amp;gt; singer-songwriter&lt;br /&gt;
	{ 31, 488205 }, -- instance of -&amp;gt; singer-songwriter&lt;br /&gt;
	{ 106, 183945 }, -- occupation -&amp;gt; record producer&lt;br /&gt;
	{ 31, 183945 }, -- instance of -&amp;gt; record producer&lt;br /&gt;
	{ 106, 10816969 }, -- occupation -&amp;gt; club DJ&lt;br /&gt;
	{ 31, 10816969 }, -- instance of -&amp;gt; club DJ&lt;br /&gt;
	{ 106, 130857 }, -- occupation -&amp;gt; DJ&lt;br /&gt;
	{ 31, 130857 }, -- instance of -&amp;gt; DJ&lt;br /&gt;
	{ 106, 158852 }, -- occupation -&amp;gt; conductor&lt;br /&gt;
	{ 31, 158852 }, -- instance of -&amp;gt; conductor&lt;br /&gt;
	{ 31, 215380 }, -- instance of -&amp;gt; band &lt;br /&gt;
	{ 31, 5741069 }, -- instance of -&amp;gt; rock band&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
function p.authorityControl( frame )&lt;br /&gt;
	--Create rows&lt;br /&gt;
	local elements = {}&lt;br /&gt;
&lt;br /&gt;
	--Collect info from Wikidata&lt;br /&gt;
	local authCtrls = {}&lt;br /&gt;
	local rct = 0&lt;br /&gt;
	local item = mw.wikibase.getEntityObject()&lt;br /&gt;
	if item ~= nil and item.claims ~= nil then&lt;br /&gt;
		for _, params in pairs( conf ) do&lt;br /&gt;
			if params[3] ~= 0 then&lt;br /&gt;
				local canUseWikidata = nil&lt;br /&gt;
				if reqs[params[1]] ~= nil then&lt;br /&gt;
					canUseWikidata = matchesWikidataRequirements( item, reqs[params[1]] )&lt;br /&gt;
				else&lt;br /&gt;
					canUseWikidata = true&lt;br /&gt;
				end&lt;br /&gt;
				if canUseWikidata then&lt;br /&gt;
					local wikidataIds = getIdsFromWikidata( item, &amp;#039;P&amp;#039; .. params[3] )&lt;br /&gt;
					if wikidataIds[1] then&lt;br /&gt;
						authCtrls[params[1]] = wikidataIds[1]&lt;br /&gt;
						if params[1] ~= &amp;#039;BNF2&amp;#039; then -- Do not count the second BNF entry&lt;br /&gt;
							rct = rct + 1&lt;br /&gt;
						end&lt;br /&gt;
						if rct == 8 then break end -- Display max 8 entries						&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if rct == 0 then return &amp;#039;[[Kategori:Artikler uten autoritetsdata]]&amp;#039; end -- Skip box when no info&lt;br /&gt;
&lt;br /&gt;
	--Worldcat&lt;br /&gt;
	if authCtrls[&amp;#039;LCCN&amp;#039;] and authCtrls[&amp;#039;LCCN&amp;#039;] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
		local lccnParts = splitLccn( authCtrls[&amp;#039;LCCN&amp;#039;] )&lt;br /&gt;
		if lccnParts then&lt;br /&gt;
			table.insert(elements, createRow(&amp;#039;WorldCat&amp;#039;, &amp;#039;WorldCat&amp;#039;, authCtrls[&amp;#039;LCCN&amp;#039;], &amp;#039;//www.worldcat.org/identities/lccn-&amp;#039; .. lccnParts[1] .. lccnParts[2] .. &amp;#039;-&amp;#039; .. lccnParts[3]))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	--Configured rows&lt;br /&gt;
	for k, params in pairs( conf ) do&lt;br /&gt;
		local val = authCtrls[params[1]]&lt;br /&gt;
		if val and val ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			table.insert(elements, createRow(params[1], params[2], val, params[4](val)))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local Navbox = require(&amp;#039;Module:Navbox&amp;#039;)&lt;br /&gt;
	local box = Navbox._navbox( {&lt;br /&gt;
		name  = &amp;#039;Autoritetsdata&amp;#039;,&lt;br /&gt;
		bodyclass = &amp;#039;hlist&amp;#039;,&lt;br /&gt;
		group1 = &amp;#039;Eksterne baser ([[Autoritetsdata]])&amp;#039;,&lt;br /&gt;
		list1 = table.concat( elements )&lt;br /&gt;
	} )&lt;br /&gt;
	return box .. (#elements==0 and (&amp;quot;&amp;#039;&amp;#039;Ingen autoritetsdata tilgjengelig&amp;#039;&amp;#039;&amp;quot;..&amp;#039;[[Kategori:Artikler uten autoritetsdata]]&amp;#039;) or &amp;#039;[[Kategori:Artikler med autoritetsdata]]&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>nb&gt;1000mm</name></author>
	</entry>
</feed>