Naar inhoud springen

Module:NPO Radio 2 Top 2000/data: verschil tussen versies

Uit Wikipedia, de vrije encyclopedie
Verwijderde inhoud Toegevoegde inhoud
titel niet meer gebruikt door module
wat te doen bij meerdere uitvoeringen van een nummer
Regel 5: Regel 5:
data[QID] = { titel='TITEL', artiest='ARTIEST', start=START, posities=POSITIES}
data[QID] = { titel='TITEL', artiest='ARTIEST', start=START, posities=POSITIES}
OF (bij meerdere artiesten):
OF (bij meerdere artiesten):
data[QID] = { titel='TITEL', artiest={'ARTIEST1', 'ARTIEST2'}, start=START, posities=POSITIES}
data[QID] = { titel='TITEL', artiest={'ARTIEST1', 'ARTIEST2', ...}, start=START, posities=POSITIES}
QID: de Wikidata-ID van het artikel van het nummer; begint altijd met een Q
QID: de Wikidata-ID van het artikel van het nummer; begint altijd met een Q
TITEL: de titel/naam van het nummer; wordt niet gebruikt door de module
TITEL: de titel/naam van het nummer; wordt niet gebruikt door de module, maakt dit bestand beter leesbaar
ARTIEST/ARTIEST1/ARTIEST2: de Wikidata-ID van het artikel van de bijbehorende artiest; begint altijd met een Q
ARTIEST/ARTIEST1/ARTIEST2: de Wikidata-ID van het artikel van de bijbehorende artiest; begint altijd met een Q
START: het eerste jaar dat het nummer een notering had in de Top 2000
START: het eerste jaar dat het nummer een notering had in de Top 2000
Regel 15: Regel 15:
LET OP:
LET OP:
- Nummers met verschillende uitvoeringen (bijv. verschillende artiesten) krijgen meerdere regels in dit databestand.
- Nummers met verschillende uitvoeringen (bijv. van verschillende artiesten) en elk een of meerdere noteringen in de Top 2000 krijgen meerdere regels in dit databestand.
- Als zulke nummers een artikel delen, volg dan onderstaande stappen:
a) voor alle nummers wordt een pagina op Wikidata gemaakt (als dat nog niet het geval was) en data wordt hieronder ingevuld met de juiste Wikidata-ID
b) de tabel voor de uitvoering behorend bij de gekoppelde Wikidata-pagina wordt getoond met {{Tabel NPO Radio 2 Top 2000}}
c) de tabel(len) voor de andere uitvoering(en) wordt/worden getoond met {{Tabel NPO Radio 2 Top 2000|qid=QID}}, met QID de Wikidata-ID (beginnend met een Q) van de niet-gekoppelde Wikidata-pagina
]]
]]



Versie van 5 jan 2024 14:45

Documentatie voor deze module kan aangemaakt worden op de volgende pagina: Module:NPO Radio 2 Top 2000/data/doc

--[[
	Lijst met data van NPO Radio 2 Top 2000-noteringen

	Opbouw:
	data[QID] = { titel='TITEL', artiest='ARTIEST', start=START, posities=POSITIES}
	OF (bij meerdere artiesten):
	data[QID] = { titel='TITEL', artiest={'ARTIEST1', 'ARTIEST2', ...}, start=START, posities=POSITIES}
	
	QID: de Wikidata-ID van het artikel van het nummer; begint altijd met een Q
	TITEL: de titel/naam van het nummer; wordt niet gebruikt door de module, maakt dit bestand beter leesbaar
	ARTIEST/ARTIEST1/ARTIEST2: de Wikidata-ID van het artikel van de bijbehorende artiest; begint altijd met een Q
	START: het eerste jaar dat het nummer een notering had in de Top 2000
	POSITIES: een lijst met posities in de Top 2000, beginnend met het jaar behorend bij START; loopt door t/m het jaar van de laatste notering (niet verder!) en eventuele tussenjaren zonder notering worden aangegeven met 0, bijvoorbeeld:
		{1659,1234,0,0,1987}
	
	LET OP:
		- Nummers met verschillende uitvoeringen (bijv. van verschillende artiesten) en elk een of meerdere noteringen in de Top 2000 krijgen meerdere regels in dit databestand.
		- Als zulke nummers een artikel delen, volg dan onderstaande stappen:
			a) voor alle nummers wordt een pagina op Wikidata gemaakt (als dat nog niet het geval was) en data wordt hieronder ingevuld met de juiste Wikidata-ID
			b) de tabel voor de uitvoering behorend bij de gekoppelde Wikidata-pagina wordt getoond met {{Tabel NPO Radio 2 Top 2000}}
			c) de tabel(len) voor de andere uitvoering(en) wordt/worden getoond met {{Tabel NPO Radio 2 Top 2000|qid=QID}}, met QID de Wikidata-ID (beginnend met een Q) van de niet-gekoppelde Wikidata-pagina
]]

local p = {}
local data = {}

data['Q104243676'] = { titel='Soldier On', artiest='Q1207824', start=2020, posities={12,14,19,18} }
data['Q104841581'] = { titel='Happy Ending', artiest={'Q962103', 'Q2187053'}, start=2007, posities={1663,0,0,1788,0,1780,1959,1900,1918} }
data['Q123987318'] = { titel='Tonight', artiest='Q27526155', start=2023, posities={213} }
data['Q6075485']   = { titel='Is She Really Going Out with Him?', artiest='Q962103', start=1999, posities={492,351,407,391,191,285,398,324,514,345,391,366,487,474,468,439,505,553,588,518,605,596,596,703,721} }
data['Q7611095']   = { titel='Steppin\' Out', artiest='Q962103', start=2009, posities={1687,0,1760,1330,1350,1404,1470,1795,1901,1898,1815,1991,1894,1934} }
data['Q2197856']   = { titel='This Is Who We Are', artiest='Q1207824', start=2014, posities={1982,0,0,0,0,0,1738} }

function p.get(frame)
	local qid = frame.qid
	return data[qid]
end

function p.find_artist(frame)
	local qid = frame.qid
	local result = {}
	local keys = {}
	for k,v in pairs(data) do
		local found = false
		if type(v.artiest) == 'string' then
			if v.artiest == qid then found = true end
		elseif type(v.artiest) == 'table' then
			for i,w in pairs(v.artiest) do
				if w == qid then found = true end
			end
		end
		if found then
			table.insert(result, v)
			table.insert(keys, k)
		end
	end
	return keys, result
end

return p