<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wikiminati.blogmanju.com/wikim/index.php?action=history&amp;feed=atom&amp;title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%3AAuthority_control%2Fauxiliary</id>
	<title>モジュール:Authority control/auxiliary - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wikiminati.blogmanju.com/wikim/index.php?action=history&amp;feed=atom&amp;title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%3AAuthority_control%2Fauxiliary"/>
	<link rel="alternate" type="text/html" href="https://wikiminati.blogmanju.com/wikim/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Authority_control/auxiliary&amp;action=history"/>
	<updated>2026-05-10T14:16:29Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.39.2</generator>
	<entry>
		<id>https://wikiminati.blogmanju.com/wikim/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Authority_control/auxiliary&amp;diff=1094&amp;oldid=prev</id>
		<title>WikiminatiWebMaster: 1版 をインポートしました: Authority control</title>
		<link rel="alternate" type="text/html" href="https://wikiminati.blogmanju.com/wikim/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Authority_control/auxiliary&amp;diff=1094&amp;oldid=prev"/>
		<updated>2023-03-19T04:02:26Z</updated>

		<summary type="html">&lt;p&gt;1版 をインポートしました: Authority control&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;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2023年3月19日 (日) 13:02時点における版&lt;/td&gt;
				&lt;/tr&gt;
&lt;!-- diff cache key xs666319_wikiminati:diff::1.12:old-1093:rev-1094 --&gt;
&lt;/table&gt;</summary>
		<author><name>WikiminatiWebMaster</name></author>
	</entry>
	<entry>
		<id>https://wikiminati.blogmanju.com/wikim/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Authority_control/auxiliary&amp;diff=1093&amp;oldid=prev</id>
		<title>Authority control&gt;MSGJ: rearrange functions, remove BNF, add label to ISIL</title>
		<link rel="alternate" type="text/html" href="https://wikiminati.blogmanju.com/wikim/index.php?title=%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB:Authority_control/auxiliary&amp;diff=1093&amp;oldid=prev"/>
		<updated>2023-03-06T10:50:14Z</updated>

		<summary type="html">&lt;p&gt;rearrange functions, remove BNF, add label to ISIL&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;require('strict')&lt;br /&gt;
local p = {}&lt;br /&gt;
--[[======================================================]]&lt;br /&gt;
--[[            Format validation functions               ]]&lt;br /&gt;
--[[======================================================]]&lt;br /&gt;
p.botanistV = function(id)&lt;br /&gt;
	return mw.ustring.match(id,&amp;quot;^[%u%l%d%. '-]+$&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.validateIsni = function(id) --Validate ISNI (and ORCID) and retuns it as a 16 characters string or returns false if it's invalid. See http://support.orcid.org/knowledgebase/articles/116780-structure-of-the-orcid-identifier&lt;br /&gt;
	id = id:gsub( '[ %-]', '' ):upper()&lt;br /&gt;
	if not id:match( '^%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d[%dX]$' ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	local total = 0&lt;br /&gt;
	for i = 1, 15 do&lt;br /&gt;
		local digit = id: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;
	local checkdigit&lt;br /&gt;
	if result == 10 then&lt;br /&gt;
		checkdigit = 'X'&lt;br /&gt;
	else&lt;br /&gt;
		checkdigit=tostring( result )&lt;br /&gt;
	end&lt;br /&gt;
	if checkdigit ~= 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 splitLccn(id)&lt;br /&gt;
	if id:match( '^%l%l?%l?%d%d%d%d%d%d%d%d%d?%d?$' ) then&lt;br /&gt;
		id = id:gsub( '^(%l+)(%d+)(%d%d%d%d%d%d)$', '%1/%2/%3' )&lt;br /&gt;
	end&lt;br /&gt;
	if id:match( '^%l%l?%l?/%d%d%d?%d?/%d+$' ) then&lt;br /&gt;
		return mw.text.split( id, '/' )&lt;br /&gt;
	end&lt;br /&gt;
	return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.lccnV = function(id)&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;
	local parts = splitLccn(id) --e.g. n78039510&lt;br /&gt;
	if not parts then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	local lccnType = parts[1] ~= 'sh' and 'names' or 'subjects'&lt;br /&gt;
	return lccnType .. '/' .. parts[1] .. parts[2] .. append( parts[3], '0', 6 )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.WorldCatLCCN = function(id)&lt;br /&gt;
	local lccnParts = splitLccn(id)&lt;br /&gt;
	if lccnParts and lccnParts[1] ~= 'sh' then&lt;br /&gt;
		return lccnParts[1]..lccnParts[2]..'-'..lccnParts[3]&lt;br /&gt;
	else&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.orcidV = function(id)&lt;br /&gt;
	id = p.validateIsni(id)&lt;br /&gt;
	if not id then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return id:sub( 1, 4 )..'-'..id:sub( 5, 8 )..'-'..id:sub( 9, 12 )..'-'..id:sub( 13, 16 )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.tlsV = function(id)&lt;br /&gt;
	id = id:gsub(' +', '_')&lt;br /&gt;
	local idlen = mw.ustring.len(id)&lt;br /&gt;
	if idlen &amp;lt; 4 or idlen &amp;gt; 90 then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	local regex = '^%u'..string.rep(&amp;quot;[%w_',%.%-%(%)%*%/–&amp;amp;]&amp;quot;, idlen - 1)..'$'&lt;br /&gt;
	if not mw.ustring.match(id,regex ) 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;
p.worldcatidV = function(id)&lt;br /&gt;
	if not id:match( '^viaf%-%d+$' ) and&lt;br /&gt;
	   not id:match( '^lccn%-n[a-z]?[0-9%-]+$' ) and&lt;br /&gt;
	   not id:match( '^n[cps]%-.+$' ) then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	return mw.uri.encode(id, 'PATH')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.zbmathV = function(id)&lt;br /&gt;
	local ps = {'%l[%l%-]*', '%.%l[%l%-]*', '%.%d*'}&lt;br /&gt;
	return id:match( '^'..ps[1]..'$' ) -- prefix with no capture options&lt;br /&gt;
	   or id:match( '^'..ps[1]..ps[2]..'$' ) -- prefix with first capture option&lt;br /&gt;
	   or id:match( '^'..ps[1]..ps[3]..'$' ) -- prefix with second capture option&lt;br /&gt;
	   or id:match( '^'..ps[1]..ps[2]..ps[3]..'$' ) -- prefix and both capture options&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[======================================================]]&lt;br /&gt;
--[[                Custom link functions                 ]]&lt;br /&gt;
--[[======================================================]]&lt;br /&gt;
p.ISILlink = function(id,label)&lt;br /&gt;
	if not id:match('^%D%D?%D?%D?%-.+$') then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	for _,prefix in ipairs({'AT','AU','BE','CA','CH','DE','FI','FR','IT','KR','NZ','US','ZDB'}) do&lt;br /&gt;
		if id:match('^'..prefix..'%-') then&lt;br /&gt;
			return '&amp;lt;span class=&amp;quot;uid&amp;quot;&amp;gt;[https://w3id.org/isil/'..id..' ' .. (label or 'ISIL') .. ']&amp;lt;/span&amp;gt;'&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return '[[International Standard Identifier for Libraries and Related Organizations|ISIL]]\n**&amp;lt;span class=&amp;quot;uid&amp;quot;&amp;gt;' .. id .. '&amp;lt;/span&amp;gt;'&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.uscgLink = function(id)&lt;br /&gt;
	local id2 = id:match( '^[1-7]%-%d%d?%d?%d?%d?$' ) or id:match( '^[1-7]%-%d%d?%d?%d?%d?%.%d*[1-9]$' )&lt;br /&gt;
	if id2 then&lt;br /&gt;
		return '&amp;lt;span class=&amp;quot;uid&amp;quot;&amp;gt;[https://www.navcen.uscg.gov/pdf/lightlists/LightList%20V'..mw.ustring.sub(id2,1,1)..'.pdf '..id2..']&amp;lt;/span&amp;gt;'&lt;br /&gt;
	else&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Authority control&gt;MSGJ</name></author>
	</entry>
</feed>