<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FRexxS%2FWdRefs</id>
	<title>Module:Sandbox/RexxS/WdRefs - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FRexxS%2FWdRefs"/>
	<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/RexxS/WdRefs&amp;action=history"/>
	<updated>2026-05-07T09:25:19Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://stockhub.co/index.php?title=Module:Sandbox/RexxS/WdRefs&amp;diff=146110&amp;oldid=prev</id>
		<title>imported&gt;Uzume: update mw.wikibase API</title>
		<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/RexxS/WdRefs&amp;diff=146110&amp;oldid=prev"/>
		<updated>2020-04-29T14:39:33Z</updated>

		<summary type="html">&lt;p&gt;update mw.wikibase API&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;--[[&lt;br /&gt;
Returns a list of all claims and references, if any, from Wikidata&lt;br /&gt;
&lt;br /&gt;
]]&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
p.seeRefs = function(frame)&lt;br /&gt;
	-- look for named parameter qid; if it&amp;#039;s blank make it nil&lt;br /&gt;
	local qid = frame.args.qid&lt;br /&gt;
	if qid and (#qid == 0) then&lt;br /&gt;
		qid = nil&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- look for named parameter lang&lt;br /&gt;
	-- it should contain a two-character ISO-639 language code&lt;br /&gt;
	-- if it&amp;#039;s blank fetch the language of the local wiki&lt;br /&gt;
	local lang = frame.args.lang&lt;br /&gt;
	if (not lang) or (#lang &amp;lt; 2) then&lt;br /&gt;
		lang = mw.language.getContentLanguage().code&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local result = &amp;quot;{| class=&amp;#039;wikitable sortable&amp;#039;\r\n! scope=&amp;#039;col&amp;#039; | Property\r\n! scope=&amp;#039;col&amp;#039; | Value\r\n&amp;quot;&lt;br /&gt;
	local numclaims = 0&lt;br /&gt;
	local ent = mw.wikibase.getEntity(qid)&lt;br /&gt;
	if ent and ent.claims then&lt;br /&gt;
		for k1, v1 in pairs(ent.claims) do&lt;br /&gt;
			-- code to look for claims&lt;br /&gt;
			numclaims = numclaims + 1&lt;br /&gt;
			result = result .. &amp;quot;|-\r\n| &amp;quot; .. (mw.wikibase.getLabel(k1) or &amp;quot;nolabel&amp;quot;) .. &amp;quot; || &amp;quot;&lt;br /&gt;
			local numvals = 0&lt;br /&gt;
			local val = &amp;quot;&amp;lt;pre&amp;gt;\r\n&amp;quot;&lt;br /&gt;
			for k2, v2 in pairs(v1) do&lt;br /&gt;
				numvals = numvals + 1&lt;br /&gt;
				local valtype = v2.mainsnak.datatype&lt;br /&gt;
				if valtype == &amp;quot;wikibase-item&amp;quot; then&lt;br /&gt;
					local label = &amp;quot;Q&amp;quot; .. v2.mainsnak.datavalue.value[&amp;quot;numeric-id&amp;quot;]&lt;br /&gt;
					label = mw.wikibase.getLabel(&amp;quot;Q&amp;quot; .. v2.mainsnak.datavalue.value[&amp;quot;numeric-id&amp;quot;]) or label&lt;br /&gt;
					val = val .. k2 .. &amp;quot;. &amp;quot; .. label&lt;br /&gt;
				elseif valtype == &amp;quot;string&amp;quot; or valtype == &amp;quot;external-id&amp;quot; or valtype == &amp;quot;url&amp;quot; or valtype == &amp;quot;commonsMedia&amp;quot; then&lt;br /&gt;
					val = val .. k2 .. &amp;quot;. &amp;quot; .. v2.mainsnak.datavalue.value&lt;br /&gt;
				elseif valtype == &amp;quot;monolingualtext&amp;quot; then&lt;br /&gt;
					val = val .. k2 .. &amp;quot;. &amp;quot; .. v2.mainsnak.datavalue.value.text&lt;br /&gt;
				else&lt;br /&gt;
					val = val .. k2 .. &amp;quot;. &amp;lt;&amp;quot; .. valtype .. &amp;quot;&amp;gt; &amp;quot; .. ent:formatPropertyValues(k1, mw.wikibase.entity.claimRanks).value  -- expand this later&lt;br /&gt;
				end	&lt;br /&gt;
				if v2.qualifiers then&lt;br /&gt;
					val = val .. &amp;quot; -- &amp;quot; .. mw.wikibase.renderSnaks(v2.qualifiers)&lt;br /&gt;
				end&lt;br /&gt;
				if v2.references then&lt;br /&gt;
					for k3, v3 in pairs(v2.references) do&lt;br /&gt;
						val = val .. &amp;quot; ++ Ref = &amp;quot; .. mw.wikibase.renderSnaks(v3.snaks)&lt;br /&gt;
					end&lt;br /&gt;
					val = val .. &amp;quot; \r\n&amp;quot;&lt;br /&gt;
				else&lt;br /&gt;
					val = val .. &amp;quot; -- NO REFS\r\n&amp;quot;&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			val = val .. &amp;quot;&amp;lt;/pre&amp;gt;\r\n&amp;quot;&lt;br /&gt;
			result = result .. val&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	result = result .. &amp;quot;|}\r\n&amp;quot; .. numclaims .. &amp;quot; claims\r\n\r\n&amp;quot;&lt;br /&gt;
	if qid then&lt;br /&gt;
		result = result .. &amp;quot;[[d:&amp;quot; .. qid .. &amp;quot;|Edit this on Wikidata]]&amp;quot;&lt;br /&gt;
	else&lt;br /&gt;
		result = result .. &amp;quot;[[d:&amp;quot; .. ent.id .. &amp;quot;|Edit this on Wikidata]]&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Uzume</name></author>
	</entry>
</feed>