In this article, we will explore in depth Module:SDcat/sandbox and its impact on contemporary society. From its origin to its current evolution, Module:SDcat/sandbox has been the subject of interest and debate in various areas, both in popular culture and in academia. We will delve into its meaning, influence and relevance in today's world, analyzing how Module:SDcat/sandbox has shaped our perceptions, attitudes and behaviors. Through this analysis, we will seek to understand the implications of Module:SDcat/sandbox in our society and reflect on its role in human development.
| This is the module sandbox page for Module:SDcat (diff). |
| This Lua module is used on approximately 6,540,000 pages, or roughly 10% of all pages. To avoid major disruption and server load, any changes should be tested in the module's /sandbox or /testcases subpages, or in your own module sandbox. The tested changes can be added to this page in a single edit. Consider discussing changes on the talk page before implementing them. |
| This module can only be edited by administrators because it is transcluded onto one or more cascade-protected pages. |
Module to check whether local short description matches that on Wikidata
setCat has the qid of a Wikidata entity passed as |qid= (it defaults to the associated qid of the current article if omitted) and the local short description passed as |sd= It returns a category if there is an associated Wikidata entity.
It returns one of the following tracking categories, as appropriate:
For testing purposes, a link prefix |lp= may be set to ":" to make the categories visible.
{{SDcat |sd={{{shortdescription|}}} }}{{#invoke:SDcat |setCat |sd={{{shortdescription|}}} }}Template:SDcat is a wrapper for this module.
sdcat = require("Module:SDcat")._setCatlocal tracking_cat = sdcat(shortdesc, itemID){{#invoke:SDcat |setCat |qid={{get QID|Douglas Adams}}|sd=English author and humorist (1952–2001) |lp=":"}}
A few examples of tests are at Module talk:SDcat
--[[
SDcat
Module to check whether local short description matches that on Wikidata
--]]
local p = {}
-------------------------------------------------------------------------------
--[[
setCat has the qid of a Wikidata entity passed as |qid=
(it defaults to the associated qid of the current article if omitted)
and the local short description passed as |sd=
It returns a category if there is an associated Wikidata entity.
It returns one of the following tracking categories, as appropriate:
* Category:Short description matches Wikidata (case-insensitive)
* Category:Short description is different from Wikidata
* Category:Short description with empty Wikidata description
For testing purposes, a link prefix |lp= may be set to ":" to make the categories visible.
--]]
-- function exported for use in other modules
-- (local short description, Wikidata entity-ID, link prefix)
p._setCat = function(sdesc, itemID, lp)
if not mw.wikibase then return nil end
if itemID == "" then itemID = nil end
-- Wikidata description field
local wdesc = (mw.wikibase.getDescription(itemID) or ""):lower()
if wdesc == "" then
return "]"
elseif wdesc == sdesc then
return "]"
else
return "]"
end
end
-- function exported for call from #invoke
p.setCat = function(frame)
local args
if frame.args.sd then
args = frame.args
else
args = frame:getParent().args
end
-- local short description
local sdesc = mw.text.trim(args.sd or ""):lower()
-- Wikidata entity-ID
local itemID = mw.text.trim(args.qid or "")
-- link prefix, strip quotes
local lp = mw.text.trim(args.lp or ""):gsub('"', '')
return p._setCat(sdesc, itemID, lp)
end
return p