<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.hedditch.com.au/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Module%3AWikidataIdentifiers</id>
	<title>Module:WikidataIdentifiers - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.hedditch.com.au/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Module%3AWikidataIdentifiers"/>
	<link rel="alternate" type="text/html" href="https://wiki.hedditch.com.au/mediawiki/index.php?title=Module:WikidataIdentifiers&amp;action=history"/>
	<updated>2026-04-22T15:53:28Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.2</generator>
	<entry>
		<id>https://wiki.hedditch.com.au/mediawiki/index.php?title=Module:WikidataIdentifiers&amp;diff=1296&amp;oldid=prev</id>
		<title>imported&gt;MusikBot II: Changed protection settings for &quot;Module:WikidataIdentifiers&quot;: High-risk template or module: 2500 transclusions (more info) ([Edit=Require extended confirmed access] (indefinite) [Move=Require extended confirmed access] (indefinite))</title>
		<link rel="alternate" type="text/html" href="https://wiki.hedditch.com.au/mediawiki/index.php?title=Module:WikidataIdentifiers&amp;diff=1296&amp;oldid=prev"/>
		<updated>2022-07-04T17:59:54Z</updated>

		<summary type="html">&lt;p&gt;Changed protection settings for &amp;quot;&lt;a href=&quot;/w/Module:WikidataIdentifiers&quot; title=&quot;Module:WikidataIdentifiers&quot;&gt;Module:WikidataIdentifiers&lt;/a&gt;&amp;quot;: &lt;a href=&quot;https://en.wikipedia.org/wiki/High-risk_templates&quot; class=&quot;extiw&quot; title=&quot;wikipedia:High-risk templates&quot;&gt;High-risk template or module&lt;/a&gt;: 2500 transclusions (&lt;a href=&quot;/mediawiki/index.php?title=User:MusikBot_II/TemplateProtector&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;User:MusikBot II/TemplateProtector (page does not exist)&quot;&gt;more info&lt;/a&gt;) ([Edit=Require extended confirmed access] (indefinite) [Move=Require extended confirmed access] (indefinite))&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- Functions for use in retrieving Wikidata for use in templates that deal with identifiers&lt;br /&gt;
-- getIdentifierQualifier returns the value of a qualifier for an Identifier&lt;br /&gt;
&lt;br /&gt;
p = {}&lt;br /&gt;
&lt;br /&gt;
-- getIdentifierQualifier returns the value of a qualifier for an Identifier&lt;br /&gt;
-- such as &amp;#039;Art UK artist ID&amp;#039;, P1367&lt;br /&gt;
-- the assumption is that one value exists for the property&lt;br /&gt;
-- and only one qualifier exists for that value&lt;br /&gt;
-- Constraint violations for P1367 are at:&lt;br /&gt;
-- https://www.wikidata.org/wiki/Wikidata:Database_reports/Constraint_violations/P1367#Single_value&lt;br /&gt;
p.getIdentifierQualifier = function(frame)&lt;br /&gt;
	local propertyID = mw.text.trim(frame.args[1] or &amp;quot;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	-- The PropertyID of the qualifier&lt;br /&gt;
	-- whose value is to be returned is passed in named parameter |qual=&lt;br /&gt;
	local qualifierID = frame.args.qual&lt;br /&gt;
	&lt;br /&gt;
	-- Can take a named parameter |qid which is the Wikidata ID for the article.&lt;br /&gt;
	-- This will not normally be used because it&amp;#039;s an expensive call.&lt;br /&gt;
	local qid = frame.args.qid&lt;br /&gt;
	if qid and (#qid == 0) then qid = nil end&lt;br /&gt;
&lt;br /&gt;
	local entity = mw.wikibase.getEntityObject(qid)&lt;br /&gt;
	local props&lt;br /&gt;
	if entity and entity.claims then&lt;br /&gt;
		props = entity.claims[propertyID]&lt;br /&gt;
	end&lt;br /&gt;
	if props then&lt;br /&gt;
		-- Check that the first value of the property is an external id&lt;br /&gt;
		if props[1].mainsnak.datatype == &amp;quot;external-id&amp;quot; then&lt;br /&gt;
			-- get any qualifiers of the first value of the property&lt;br /&gt;
			local quals = props[1].qualifiers&lt;br /&gt;
			if quals and quals[qualifierID] then&lt;br /&gt;
				-- check what the dataype of the first qualifier value is&lt;br /&gt;
				-- if it&amp;#039;s quantity return the amount&lt;br /&gt;
				if quals[qualifierID][1].datatype == &amp;quot;quantity&amp;quot; then&lt;br /&gt;
					return tonumber(quals[qualifierID][1].datavalue.value.amount)&lt;br /&gt;
				end&lt;br /&gt;
				-- checks for other datatypes go here:&lt;br /&gt;
				&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;MusikBot II</name></author>
	</entry>
</feed>