Modul:Wikidata utilities: Unterschied zwischen den Versionen
Korrektur, vereinfachtes Ergebnis
(getAliases: lang = contentlanguage) |
(Korrektur, vereinfachtes Ergebnis) |
||
Zeile 290: | Zeile 290: | ||
if t == 'wikibase-entityid' then | if t == 'wikibase-entityid' then | ||
v = v.id | v = v.id | ||
elseif t == 'quantity' then | |||
if v.unit == '1' then | |||
v = tonumber( v.amount ) or 1 | |||
else | |||
v = v.amount:gsub( '^+', '' ) .. ' ' .. v.unit | |||
end | |||
elseif t == 'time' then | elseif t == 'time' then | ||
v = v.time | v = v.time | ||
Zeile 311: | Zeile 317: | ||
local array | local array | ||
for i = 1, #statements, 1 do | for i = 1, #statements, 1 do | ||
array = { value = statements[ i ].mainsnak.datavalue | array = { value = getValueFromDatavalue( statements[ i ].mainsnak.datavalue ), | ||
[ 'value-type' ] = statements[ i ].mainsnak.datavalue.type } | [ 'value-type' ] = statements[ i ].mainsnak.datavalue.type } | ||
if statements[ i ].qualifiers then | if statements[ i ].qualifiers then | ||
Zeile 333: | Zeile 339: | ||
if statements[ i ].qualifiers[ value ][ j ].snaktype == 'value' then | if statements[ i ].qualifiers[ value ][ j ].snaktype == 'value' then | ||
array[ value ], array[ value .. '-type' ] = | array[ value ], array[ value .. '-type' ] = | ||
getValueFromDatavalue( statements[ i ].qualifiers[ value ][ j ].datavalue ) | |||
break | break | ||
end | end |