Modul:Wb: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
imported>Juergen.Kett |
imported>Juergen.Kett |
||
Zeile 20: | Zeile 20: | ||
return "init Entity" | return "init Entity" | ||
end | end | ||
+ | if not p.entity then | ||
+ | return "Entity still nil" | ||
+ | end | ||
+ | |||
p.nextStatement() | p.nextStatement() | ||
return p.value | return p.value |
Version vom 29. Mai 2020, 11:03 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Wb/Doku erstellt werden
local p = {}; p.id = nil; p.entity = nil; p.claims = nil; p.keys = {}; p.index = 1; p.property = nil; p.value = nil; p.qualifier = nil; p.getNextStatement = function(frame) p.id = frame.args.id if not p.id then return "" end if not p.entity then p.initEntity(p.id) return "init Entity" end if not p.entity then return "Entity still nil" end p.nextStatement() return p.value end function p.initEntity(qid) p.entity = mw.wikibase.getEntity(qid) p.claims = p.entity["claims"] -- p.i, p.v = next(p.claims, nil) -- mw.logObject(p.entity) p.keys = {} p.index=1 local i = 1 for k in pairs(p.claims) do p.keys[i]=k i = i + 1 end mw.logObject(p.keys) end function p.nextStatement() p.property = p.keys[p.index] mw.log(p.property) if p.property then claim = p.claims[p.property] snak = claim[1]["mainsnak"] p.value = mw.wikibase.renderSnak(snak) mw.logObject(p.value) p.index = p.index + 1 end end p.getLabel = function (frame) local pid = frame.args.pid local label = mw.wikibase.getLabel(pid) return label end return p