Módulo:Wikidata/Formato premio
Uso
En este módulo se definen algunos de los tipos de datos de la plantilla {{propiedad}}
o equivalentemente de las funciones permitidas para el parámetro valor-función del módulo:Wikidata.
premio
- uso desde la plantilla propiedad
{{Propiedad|id. de la propiedad|tipo de dato=premio|parámetros opcionales}}
Tipo de dato para la propiedad «premio recibido (P166)». Se muestra el premio eliminando los literales de la forma " a ...", " a la ..." o " en la categoría ...".
Para la lista de los parámetros posibles véase la plantilla {{propiedad}}
o el módulo:Wikidata si se accede desde un módulo Lua.
Pueden verse ejemplos de utilización en la página de pruebas del módulo.
local p = {}
local moduloWikidataFormatos = require('Módulo:Wikidata/Formatos')
local obtenerDatos = moduloWikidataFormatos.obtenerDatos
local enlazar = moduloWikidataFormatos.enlazar
local noMostrarPremio={
['Q20899118'] = true, -- NPR Top 100 Science Fiction and Fantasy Books
}
-- Formato para un premio individual de una obra sin incluir los calificativos
function p.formatoPremio(valor, opciones)
local enlace, etiqueta, idEntidad = obtenerDatos(valor)
if idEntidad and noMostrarPremio[idEntidad] then
return
end
-- Eliminar de la etiqueta la categoría del premio
if etiqueta then
etiqueta = etiqueta:match('^(.*)%s+a%s.*$') or -- Ejemplo: Premio Nébula a la mejor novela corta --> Premio Nébula
etiqueta:match('^(.*)%s+al%s.*$') or -- Ejemplo: Premio Hugo al mejor relato --> Premio Hugo
etiqueta:match('^(.*) en la categoría') or -- Ejemplo: Premio Prometheus en la categoría Hall of Fame --> Premio Prometheus
etiqueta
end
return enlazar(enlace, etiqueta, idEntidad, opciones)
end
-- Alias para simplificar el uso desde la plantilla propiedad, por ejemplo:
-- {{Propiedad|P166|tipo de dato=premio}}
--
p['premio'] = p.formatoPremio
return p