Přeskočit na obsah

Diskuse k modulu:Wikidata

Obsah stránky není podporován v jiných jazycích.
Přidat téma
Z Wikipedie, otevřené encyklopedie
Poslední komentář:před 11 měsíciod uživatele Matěj Suchánek v tématu „Rozsekání více hodnot
Archivy
Archivy


Filtrovat zobrazené hodnoty podle vlastností v nich?[editovat zdroj]

Šablona:Části české obce(za kterou se stydím, zasloužila by si asi vlastní modul) zobrazujenižší správní celky(P150)pomocí tohoto callu: {{#invoke:Wikidata|formatStatements|property=P150|id={{{1|<noinclude>Q1085</noinclude>}}}|sort= Alpha |separator=</li><li>|conjunction=</li><li>|showqualifier=time|addclass=false}}</li> }}. Je možné dodatečně zobrazené hodnoty filtrovat a zobrazit jen ty, které např. mají vyplněnou vlastnostkód části obce podle RÚIAN(P2788)?@Matěj Suchánek:jestli to někdo bude vědět, tak ty:-). --Vojtěch Dostál(diskuse)10. 1. 2023, 11:25 (CET)Odpovědět

Zatím není, ale můžeme to doimplementovat. Bude nutné vyjasnit vztah ke specialitám typu „žádná hodnota “, „neznámá hodnota “, případně nějaká parametrizace. --Matěj Suchánek(diskuse)10. 1. 2023, 19:06 (CET)Odpovědět
@Matěj SuchánekOmlouvám se za pozdní odpověď. Kdyby sis na to někdy udělal čas, bylo by to super. Neznámé a žádné hodnoty bude určitě potřeba nějak ošetřit. Při té příležitosti by bylo super rovnou implementovat i filtry na konkrétní hodnoty vlastností (čili nikoliv jen parametr "hasproperty", ale i "haspropertyvalue" ). --Vojtěch Dostál(diskuse)18. 2. 2023, 16:46 (CET)Odpovědět
Otázka jsou také ranky. Mně osobně připadá nejpraktičtější jako výchozí "bestrank". Je otázka zda by někdo potřeboval i možnost "všechny truth statementy" a ještě větší otázka je, jakými parametry by se to definovalo. --Vojtěch Dostál(diskuse)18. 2. 2023, 16:48 (CET)Odpovědět
VyřešenoVyřešenoJakohasproperty=ahaspropertyvalue=.--Matěj Suchánek(diskuse)18. 2. 2023, 18:25 (CET)Odpovědět
@Matěj SuchánekMoc děkuji! --Vojtěch Dostál(diskuse)27. 2. 2023, 21:04 (CET)Odpovědět

Přebírání z Wikidat si neví rady s trans ženami[editovat zdroj]

Tápu, kde se co jak musí upravit, aby se v infoboxu vypsala slova u profesí v ženském rodě u osob, které majípohlaví(P21)vyplněno jakotrans žena(Q1052281)(příklad). Vím oŠablona:Pohlaví z WD,která zná jenmuž(Q6581097)ažena(Q6581072)a která zároveň plní skrytou kategoriiOsoby nejistého pohlaví na Wikidatechosobami se známou identitou, ale nevím, jestli stačí opravit tu (a jak), nebo jsou to dva různé problémy a je potřeba upravit i modul nebo něco dalšího. --TFerenczy(diskuse)26. 1. 2023, 13:00 (CET)Odpovědět

@TFerenczy:Jsou to dvě různé věci. Přechylování profesí dělá modul tady:Modul:Wikidata/Formatters/wikibase-entityid#L-66.
{{Pohlaví z WD}}je zodpovědné za přechylování popisků, např.{{Pohlaví z WD|Znám|Známá|Znám(á)}} jakov infoboxu osoba, nebo za onu kategorii.
Není problém obojí změnit, předpokládám, že tak, aby se u transžen používal ženský rod a nepřidávala kategorie? --Matěj Suchánek(diskuse)29. 1. 2023, 11:59 (CET)Odpovědět
@Matěj SuchánekDíky za dopátrání! Ano, změnit přesně jak říkáš. --TFerenczy(diskuse)29. 1. 2023, 12:52 (CET)Odpovědět
HotovoHotovoHotovo.--Matěj Suchánek(diskuse)29. 1. 2023, 13:08 (CET)Odpovědět

Rozsekání více hodnot[editovat zdroj]

@Matěj Suchánek:Na Wikizdrojích bývala hodněhistorická verzemodulu. Používali jsme tam například kategorizaci na základě povolání pomocí{{#invoke:Wikidata|formatStatements|property=P106|wrap=[[Kategorie:Autoři:Podle povolání/$1]]|separator=|conjunction=}},takže se k osobě přiřadily například kategoriebásníkapedagog.Po aktualizaci modulu ale dostanu jediný řetězecbásník a pedagoga kategorie (nově zadaná pomocípattern=) se nevytvoří. Jde s tímto modulem docílitpožadované,nebo je třeba výsledek rozsekat nějak jinak (třeba pomocíModul:String)? --JAnD(diskuse)24. 7. 2023, 08:00 (CEST)Odpovědět

Patternz určitých důvodůfunguje pouze pro data, která mají povahu řetězce. Buď nějak rozsekat, nebo přepsat do Lua na způsob:
localWikidata=require'Modul:Wikidata'
locallib=require'Modul:Wikidata/lib'
localout={}
for_,valueinipairs(Wikidata.getRawValues{property=property})do
locallabel=mw.wikibase.getLabel(value)
iflabelthen
table.insert(out,lib.formatFromPattern(label,pattern))
end
end
returntable.concat(out,'')
nebo pomocí nějakéhovlastního formátovače.--Matěj Suchánek(diskuse)24. 7. 2023, 09:24 (CEST)Odpovědět
@Matěj SuchánekDíky, chápu, že to tedy nejde, ale ani jedno tebou navržené řešení mi kvůli mojí neznalosti lua nefunguje:
Mohl bys tomu, prosím, věnovat chvíli času?s:Diskuse k šabloně:Monitoring Wikidata--JAnD(diskuse)24. 7. 2023, 11:42 (CEST)Odpovědět
Dokončil jsem svoji myšlenku tady:s:Speciální:Trvalý odkaz/290500.U formátovače je problém, že modul stále bude cpát čárky mezi kategorie. To se dá obejít třeba CSS hackem. Ale formátovač bych zatím nechal být.
A také pozor na zápispattern={{Kategorie|Wikidata:P31 $1}}.Ten se totiž rozbaluje ve chvíli, kdy modul tento parametr čte. Tedy modul uvidí už rozbalený wikitext. (A naopak parser sám o sobě nerozbalípattern={{Kategorie|...}},pokud je vrácený z modulu, rozbalení musí zajistit modul, jinak se text chová, jako by byl obalený<nowiki>.) --Matěj Suchánek(diskuse)24. 7. 2023, 12:49 (CEST)Odpovědět