Moduldiskussion:Wikidata

Page contents not supported in other languages.
Fra Wikipedia, den frie encyklopædi

mw.wikibase.getEntity to mw.wikibase.getEntityObject[rediger kildetekst]

I am trying to change all important modules using mw.wikibase.getEntity() which is deprecated to mw.wikibase.getEntityObject(). You can find more details here [1]. If you could change it on this module, that would be great! There is a simmilar one for example here [2], which includes the newer function already. Thank you a lot! --Lucie Kaffee (WMDE) (diskussion) 27. feb 2015, 13:39 (CET)

Done --Steen Th (diskussion) 27. feb 2015, 16:36 (CET)

Dette modul synes at følge et eller andet forlæg; måske noget spansk, jeg har ikke kunnet finde det. Det synes dog at være lidt bagud.

Jeg foreslår (ikke prioriteret):

  1. Der arbejdes fortsat på engelsk - kun skabelonforfattere har brug for at komme her.
  2. /dok-undersiden oprettes for kortfattet at pege på forlæget.
  3. i18n oversættes - måske via en underside, så der ikke skal rettes, når hele modulet importeres fra forlæget. I det mindste somevalue og novalue skal være på dansk (har værdi / ingen værdi).
  4. getEntityFromId kan nu godt hente andre id (emner)
  5. formatStatements - det er ikke en fejl at returnere tomt, hvis entity eller property ikke findes.
  6. formatDatavalue - der mangler en default-formatter til numeriske data. Dem til latitud og longitud burde ikke kunne komme ud, idet options.property jo har en Pxxx-værdi.
  7. formatEntityId bør håndtere tilfælde, hvor et emne i Wikidata har label på et tilbagefalds-sprog; fx ved at vise dette label kursiveret (med title/mouseover, som forklarer) efterfulgt af en ikon, som linker til Wikidata. Såfremt der ikke findes en label på tilbagefalds-sprogene, bør der stadig være en ikon, som linker til Wikidata. Ikonerne skal eventuelt kun vises for brugere, som er logget ind; de har nok lidt bedre forudsætninger for at redigere, også på Wikidata.
  8. getSiteLink bør virke som formatEntityId ovenfor.

-- Poul G disk. 29. aug 2015, 15:29 (CEST)

Jeg har brugt den spanske modul som inspiration. Og det hænger sammen med håndtering af koordinater til {{Coord wd}}, hvor jeg brugte den spanske kode. Det kan muligvis gøres på en anden måde. Jeg har ikke brugt meget tid på oversættelse, da jeg kun har brugt modulet til skabeloner. --Steen Th (diskussion) 29. aug 2015, 15:59 (CEST)
Jeg har kigget lidt videre på de forskellige versioner: De falder tilsyneladende i to grupper; en og de, hvor en udgiver en del flere funktioner (og bruger mange kræfter på datokonvertering), samt "latinske"/nordiske, hvor es nu har oversat næsten alt til spansk, fr har udviklet sig voldsomt (stort men pænt kodet), no har fulgt med et stykke af vejen og sv+da hænger et stykke tilbage. Jeg er ret meget i vildrede med, hvad vi bør lægge os op ad. Og jeg tror i øvrigt det havde været lidt mere elegant at lave coord-kaldet med value-module/-function. -- Poul G disk. 2. sep 2015, 15:25 (CEST)
@Poul G: Omkring coord-kaldet - det var de nemmeste på det tidspunkt. Men som overgang kan omlægge det i {{coord wd}}.
Ellers ser den franske udgave pæn ud. Men det kunne være en ide at kortlægge hvor modulet bliver brugt. Jeg har brugt den i {{Infoboks togstation}} via {{wikidata}}. --Steen Th (diskussion) 5. sep 2015, 12:12 (CEST)
@Steenth: Modul:Wikidata har mange anvendelser; det store flertal dog via {{Coord wd}} → {{Wikidata}} (bedømt ud fra stikprøve). Søger jeg kun skabeloner, som anvender {{Wikidata}}, kommer kun {{Infoboks sang}} og {{Infoboks togstation}} frem. Der er dog flere, både dem som vises på WikiProjekt Wikidata og {{Infoboks MF}}. Den manglende visning kan måske hænge sammen med, at inkluderingen er betinget i de sidste.
Det franske forelæg kunne være en god inspiration, men undersider og dokumentation skal ikke være på fransk. Og nok også være noget fyldigere.
Det undrer mig i øvrigt, at de forskellige Wikidata-moduler er koblet sammen via Wikidata selv; de er beslægtede, men dog så forskellige, at der ikke kan siges at være tale om det samme. Måske kigger jeg i første omgang på Modul:Sandkasse/Poul G/Dataliste -- Poul G disk. 10. sep 2015, 13:24 (CEST)
Jeg har talt, hvor Skabelon:wikidata bruges sammen med disse skabeloner:
Det er coord, som den kritiske af de 5 skabeloner. --Steen Th (diskussion) 10. sep 2015, 18:15 (CEST)

1) Hvorfor mon den ikke vil acceptere en dokumentationsside hvor man kan tilføje vejledning og kategorier som for eksempel Modul:Separated entries/dok.
Det virker som om den betragter siden som et modul og ikke som en dokumentationsside.

2) Jeg vil gerne teste en funktion fra den engelske en:Module:Wikidata

-- returns the page id (Q...) of the current page or nothing of the page is not connected to Wikidata
function p.pageId(frame)
	local entity = mw.wikibase.getEntityObject()
	if not entity then return nil else return entity.id end
end

Kan jeg blot tilføje denne kodestump uden problemer?
-- Mvh PHansen (diskussion) 20. feb 2016, 09:56 (CET)

GetDescription[rediger kildetekst]

function p._getDescription(entity, lang)
	if not entity then
		return i18n('no description')
	end
	if type(entity) ~= 'table' then
		entity = p.getEntity(entity)
	end
	local descriptions = entity.descriptions
	if not descriptions then
		return i18n('no description')
	end
	if descriptions[lang] then
		return descriptions[lang].value
	end
	local langlist = fb.fblist(lang or defaultlang) -- list of fallback languages if no label in the desired language
	for i, lg in pairs(langlist) do
		if descriptions[lg] then
			return descriptions[lg].value
		end
	end
	return i18n('no description')
end

OG

function p.getDescription(frame) -- simple for simple templates like {{Q|}}}
	local entity = frame.args.entity
	local lang = frame.args.lang

	return p._getDescription(entity, lang) or i18n('invalid-id')
end

(Skrev Rodeong (diskussion • bidrag) . Husk at signere dine indlæg.)

Til @Rodejong: : De to funktioner ser ud til a være i Modul:Wikidata2, hvis du kan bruge det. -- Mvh PHansen (diskussion) 13. jan 2017, 18:17 (CET)
PHansen : Desværre giver den så Lua-fejl i package.lua på linje 80: module 'Module:Linguistic' not found. Med venlig hilsen,  Rodejong  💬 ✉️   13. jan 2017, 18:33 (CET)

ViewSomething[rediger kildetekst]

Den engelske Module:Wikidata [3] har ViewSomething. Jeg gad vide om den kunne komme ind på den danske Wikipedia? Jeg forsøger at få {{Scholia}} til at virke. — Fnielsen (diskussion) 14. aug 2019, 16:15 (CEST)

-- look into entity object
function p.ViewSomething(frame)
	local f = (frame.args[1] or frame.args.id) and frame or frame:getParent()
	local id = f.args.id
	if id and (#id == 0) then
		id = nil
	end
	local data = mw.wikibase.getEntityObject(id)
	if not data then
		return nil
	end

	local i = 1
	while true do
		local index = f.args[i]
		if not index then
			if type(data) == "table" then
				return mw.text.jsonEncode(data, mw.text.JSON_PRESERVE_KEYS + mw.text.JSON_PRETTY)
			else
				return tostring(data)
			end
		end

		data = data[index] or data[tonumber(index)]
		if not data then
			return
		end

		i = i + 1
	end
end

Det er ikke indlysende for mig, hvad vi vil kunne - og hvordan - hvis vi indfører dette "håndtag". -- Poul G disk. 17. aug 2019, 16:04 (CEST)
@Fnielsen og Poul G: Det ligner at det er bedst at opgradere modulet fra enwiki. Men modulet bruges 12 steder via skabelon {{Wikidata}} - de fleste steder via infobokse. Hvis vi opdatere modulet, så virker de ikke, da håndtering af parametre er forskellig. Så det skal tages højde for. Og ikke alle steder bliver det brugt - så det er svært at fange alle steder. Jeg vil ændre beskyttelsesniveauet, da det ikke mere er nødvendig, at den er fyld beskyttet - det gavn mening da {{coord wd}} brugte den. --Steen Th (diskussion) 18. aug 2019, 10:54 (CEST)
Idéen med at have fælles moduler, så vi ikke alle skal sidde og opfinde funktions- og parameternavne, er forførende. I givet fald bør de vel bo på enten commons eller wikidata og ikke fx enwiki. (Der er i øvrigt også god inspiration af finde på frwiki.) Jeg synes stadig ikke mit "hvorfor" er besvaret. -- Poul G disk. 18. aug 2019, 12:37 (CEST)
WFM arbejder med mulighederne og har nogle tanker om det. Der er et problem, at mange af de engelske skabeloner og moduler ikke er forbedret på oversættelse og tilpasning til andre wiki'er. Men det kan blive bedre. --Steen Th (diskussion) 18. aug 2019, 16:04 (CEST)