Mòdul:Wikidata/Units
Aparença
Mòdul auxiliar per obtenir les unitats d'un valor de Wikidata. El format per a cada unitat és:
Qxxx = {
label = 'xxx',
plural = 'xxx',
ucode = 'xxx',
},
La inclusió en aquesta taula és opcional:
Q
seguit d'uns números és el qualificador de la unitat a Wikidata, usat com a referència.label
és l'etiqueta de la unitat a Wikidata. S'obté automàticament de la consulta a Wikidata i s'inclou aquí en casos d'alta utilització per evitar canvis sobtats i massius deguts a una modificació a Wikidata, sigui vandàlica o no.plural
és el plural de l'etiqueta d'unitat, a utilitzar quan la quantitat sigui diferent d'1. Es genera automàticament a partir d'unes regles (vegeu Mòdul:ca-flexió) i només caldrà incloure'l en casos estranys no regulars.ucode
és el codi o l'abreviatura de la unitat, a utilitzar en cas d'usar el paràmetreformatting=unitcode
. Si no existeix traurà l'etiqueta en singular. Cal recordar que les abreviatures van amb punt final i els codis no.
local wikidata_units = {
Q11573 = {
label = 'metre',
ucode = 'm',
},
Q5151 = {
label = 'mes',
plural = 'mesos',
},
Q174728 = {
label = 'centímetre',
plural = 'centímetres',
ucode = 'cm',
},
Q828224 = {
label = 'quilòmetre',
plural = 'quilòmetres',
ucode = 'km',
},
Q253276 = {
label = 'milla',
plural = 'milles',
ucode = 'mi',
},
Q3710 = {
label = 'peu',
plural = 'peus',
ucode = 'ft',
},
Q25343 = {
label = 'metre quadrat',
plural = 'metres quadrats',
ucode = 'm²',
},
Q712226 = {
label = 'quilòmetre quadrat',
plural = 'quilòmetres quadrats',
ucode = 'km²',
},
Q232291 = {
label = 'milla quadrada',
plural = 'milles quadrades',
ucode = 'mi²',
},
Q35852 = {
label = 'hectàrea',
plural = 'hectàrees',
ucode = 'ha',
},
Q5195628 = {
label = 'hectòmetre cúbic',
plural = 'hectòmetres cúbics',
ucode = 'hm<sup>3</sup>',
},
Q160857 = {
label = 'cavall de vapor',
plural = 'cavalls de vapor',
ucode = 'CV',
},
Q3320608 = {
label = 'kilowatt',
plural = 'kilowatts',
ucode = 'kw',
},
Q11570 = {
label = 'quilogram',
plural = 'quilograms',
ucode = 'kg',
},
Q11229 = {
label = 'percentatge',
plural = 'percentatges',
ucode = '%',
},
Q4917 = {
label = 'dòlar dels Estats Units',
plural = 'dòlars dels Estats Units',
ucode = '$',
},
Q25224 = {
label = 'lliura esterlina',
plural = 'lliures esterlines',
ucode = '£',
},
Q4916 = {
label = 'euro',
plural = 'euros',
ucode = '€',
},
Q1811 = {
label = 'unitat astronòmica',
plural = 'unitats astronòmiques',
ucode = 'UA',
},
Q28390 = {
label = 'grau sexagesimal',
plural = 'graus sexagesimals',
ucode = '°',
},
Q573 = {
label = 'dia',
plural = 'dies',
ucode = 'dies',
},
Q25517 = {
label = 'metre cúbic',
plural = 'metres cúbics',
ucode = 'm<sup>3</sup>',
},
Q794261 = {
label = 'metre cúbic per segon',
plural = 'metres cúbics per segon',
ucode = 'm<sup>3</sup>/seg',
},
Q7727 = {
label = 'minut',
plural = 'minuts',
ucode = 'min',
},
Q11574 = {
label = 'segon',
plural = 'segons',
ucode = 's',
},
Q41803 = {
label = 'gram',
plural = 'grams',
ucode = 'g',
},
Q218593 = {
label = 'polzada',
plural = 'polzades',
ucode = '″',
},
Q1063786 = {
label = 'polzada quadrada',
plural = 'polzades quadrades',
},
Q3710 = {
label = 'peu',
plural = 'peus',
},
Q209426 = {
label = 'minut',
plural = 'minuts',
ucode = '′',
},
Q829073 = {
label = 'segon',
plural = 'segons',
ucode = '″',
},
Q11229 = {
label = 'percentatge',
plural = 'percentatge',
ucode = '%',
},
Q25267 = {
label = 'grau Celsius',
plural = 'graus Celsius',
ucode = '°C',
},
Q13147228 = {
label = 'gram per centímetre cúbic',
plural = 'grams per centímetre cúbic',
ucode = 'g/cm<sup>3</sup>',
},
}
local function getUnit(amount, label, unitID, code)
if label == nil or label == '' then return unitID end
local id_data = wikidata_units[unitID] or {}
local unit_text = ''
if code then
unit_text = id_data.ucode or id_data.label or label
elseif amount == "1" then
unit_text = id_data.label or label
else
unit_text = id_data.plural or require("Module:ca-flexió").plural(id_data.label or label)
end
return unit_text
end
return {getUnit = getUnit}