Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014
Bug bei der Anzeige von Referenzen
@Mps, JakobVoss: Beim Aufruf der Funktion {{#invoke:Wikidata|claim|Pxxx|references=ja}}
kommt es zu einem Skriptfehler, falls die Referenz auf Wikidata eine Zeitangabe/Datum enthält. Ein Beispiel ist Ma Long, wenn {{#invoke:Wikidata|claim|P1352|references=ja}}
eingefügt wird. --Pasleim (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Pasleim-2014-06-19T00:44:00.000Z-Bug bei der Anzeige von Referenzen11
- Hallo, der Fehler ist jetzt korrigiert. --Mps、かみまみたDisk. Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Mps-2014-06-19T11:27:00.000Z-Pasleim-2014-06-19T00:44:00.000Z11
Featurewunsch
Hallo,
ich hätte mal einen Featurewunsch für dieses Modul: Es wäre toll, wenn man so ähnlich wie beim englischen Modul (https://en.wikipedia.org/wiki/Module:Wikidata) optional mit einem FETCH_WIKIDATA Parameter o.ä. arbeiten könnte. Also um mal das Beispiel von dort zu übernehmen:
{{#invoke:Wikidata|getValue|p26|{{{spouse|FETCH_WIKIDATA}}} }}
Das würde nur dann die Daten aus Wikidata übernehmen wenn entweder "spouse" nicht angegeben ist oder als Wert "FETCH_WIKIDATA" angegeben wird. Ansonsten wird entweder kein Wert angezeigt (bei "spouse =", also kein Wert) oder der "lokale" Wert aus dem Template übernommen. --Bthfan (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Bthfan-2014-07-08T16:45:00.000Z-Featurewunsch11
- Hallo, ich habe mir das mal angeschaut finde das aber in enWP auf den ersten Blick etwas seltsam gelöst. Ich würde vorziehen hier einfach einen Parameter
default=
einzuführen mit dem man das ähnlich lösen kann. Das heißt wenn man will das die Wikidata-Angaben bevorzugt werden und nur wenn keine vorhanden sind, man den Wert eines Vorlagenparameters zurückgibt dann kann man{{#invoke:Wikidata|claim|P26|default={{{spouse|}}} }}
verwenden, wenn man jedoch die Vorlagenparameter bevorzugen will und nur wenn dieser leer ist auf Wikidata zurückgreift, dann kann man wie bisher{{{spouse| {{#invoke:Wikidata|claim|P26}} }}}
nutzen. Ich werde aber mal am Wochenende detaillierter überprüfen, was der Vorteil der englischen Lösung wäre, und gegebenenfalls das eine oder andere einbauen. --Mps、かみまみたDisk. Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Mps-2014-07-09T12:22:00.000Z-Bthfan-2014-07-08T16:45:00.000Z11- Hallo, ich habe eine neue Funktion
getValue
eingebaut, die die erweiterten Fähigkeiten vonclaim
mit der Funktionalität aus der englischen Wikipedia kombiniert. {{#invoke:Wikidata|getValue|p26|{{{spouse|FETCH_WIKIDATA}}} }} müsste hier jetzt genauso funktionieren – abgesehen davon das Artikel nicht automatisch verlinkt werden, was jedoch angegeben werden kann. Die englischen FunktionengetRawValue
undgetDateValue
habe ich nicht übertragen, da da ersteres über geeignete Wahl desparameter
-Parameters erreicht werden kann und bzgl. letzteres, sowieso immer ein richtig formatiertes Datum zurückgegeben wird. --Mps、かみまみたDisk. Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Mps-2014-07-12T22:13:00.000Z-Mps-2014-07-09T12:22:00.000Z11
- Hallo, ich habe eine neue Funktion
Noch ein Featurewunsch, start date/end date berücksichtigen?
Hallo,
ich hab direkt noch eine Idee/Wunsch, allerdings bin ich mir selbst noch nicht sicher ob das nicht schon etwas zu speziell für ein allgemeines Modul ist: Es besteht ja die Möglichkeit mittels Qualifiern anzugeben, wann eine Aussage anfängt gültig zu sein, siehe https://www.wikidata.org/wiki/Property:P580 und https://www.wikidata.org/wiki/Property:P582. Ein möglicher Usecase dafür wäre z.B. wenn man historische (ich nenns einfach mal so) Daten in mehreren Claims in einem Item abspeichern will, aber gleichzeitig die neueste Aussage haben will. Beispiel: Bei einer Sportmannschaft wird mit https://www.wikidata.org/wiki/Property:P118 (league) angegeben in welcher Liga diese spielt. Jetzt könnte man aber z.B. auch folgendes abspeichern im Item:
P118: 1. Fußball-Bundesliga (start date:2000, end date: 2002) P118: 2. Fußball-Bundesliga (start date:2002, end date: 2006) P118: 1. Fußball-Bundesliga (start date:2006, end date: 2010) P118: 2. Fußball-Bundesliga (start date:2010)
Um jetzt die aktuelle Liga aus Wikidata rauszubekommen, müsste man dann entsprechend diese claims abarbeiten und sehen was das aktuellste (bzw. möglicherweise auch das nehmen, welches keine Qualifier besitzt). Weiterer use case wäre z.B. bei einem Sportler member of sports team (https://www.wikidata.org/wiki/Property:P54) wenn man das aktuelle Team abrufen will. Oder ganz allgemein gesehen alle Properties, die dafür geeignet sind historische Daten abzuspeichern. Aber wenn ich mir das nochmal überlege, das ist schon eine eher spezielle Funktionalität, die man in einem neuen Modul realisieren könnte. Oder zumindest eine extra Funktion im "Wikidata" Modul dafür basteln. --Bthfan (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Bthfan-2014-07-09T15:05:00.000Z-Noch ein Featurewunsch, start date/end date berücksichtigen?11
- Dein Problem löst sich am besten direkt in Wikidata mit Ranks. Wenn du beim aktuellen Wert den Rank 'vorrangig' setzt, erscheint nur dieser Wert in Wikipedia. --Pasleim (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Pasleim-2014-07-10T00:42:00.000Z-Bthfan-2014-07-09T15:05:00.000Z11
- Achja, stimmt, das mit Ranks ist mir bisher entgangen. Ja dann ist mein Featurewunsch quasi obsolet geworden :) (außer es sollte Spezialfälle geben, in denen der Rang nicht ausreicht. Fällt mir aber gerade nix ein). --Bthfan (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Bthfan-2014-07-10T06:19:00.000Z-Pasleim-2014-07-10T00:42:00.000Z11
Frage zu Infoboxen
Ich kenn mich nicht so gut aus mit dem Code, aus dem die Infoboxen gebastelt werden. Wie kann man einen Wert aus Wikidata in eine Infobox einfügen, wenn im Artikel kein Wert für diesen angegeben wird? Wie macht man das Beispielsweise mit: {{#invoke:Wikidata|claim|P1352|references=ja|list=, }} und einer Zeile aus der Infobox?
|- {{#if: {{{PubChem|}}} | {{!}} [[PubChem]] {{!}} [http://pubchem.ncbi.nlm.nih.gov/summary/summary.cgi?cid={{{PubChem}}} {{{PubChem}}}] }}
Danke für die Hilfe! --Tobias1984 (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Tobias1984-2014-10-28T17:51:00.000Z-Frage zu Infoboxen11
- Hallo, ich gehe jetzt mal im folgenden aus dass statt Rang (P1352) eigentlich PubChem-ID (CID) (P662) gemeint ist. Das würde man obigen Codeschnipsel wie folgt ändern müssen:
|- {{#if: {{{PubChem|{{#property:P662}}}}} | {{!}} [[PubChem]] {{!}} [http://pubchem.ncbi.nlm.nih.gov/summary/summary.cgi?cid={{{PubChem|{{#property:P662}}}}} {{{PubChem|{{#property:P662}}}}}] }}
- In diesem Fall würde erst überprüft ob der Parameter
PubChem
einen Wert hat und wenn nicht wird automatisch geschaut ob ein Wikidata-Eintrag vorhanden ist. Statt{{#property:P662}}
kann man auch{{#invoke:Wikidata|claim|P662}}
verwenden, wenn man Infos braucht die ersteres nicht liefert. - Wenn man es dem Ausfüller der Infobox überlassen will ob ein Wikidata geholt werden soll, ginge auch:
|- {{#if: {{{PubChem|}}} | {{!}} [[PubChem]] {{!}} [http://pubchem.ncbi.nlm.nih.gov/summary/summary.cgi?cid={{#invoke:Wikidata|getValue|P662|{{{PubChem}}}}} {{#invoke:Wikidata|getValue|P662|{{{PubChem}}}}}] }}
- In diesem Fall wird nur auf Wikidata zurückgegriffen, wenn der Ausfüller der Vorlage
PubChem = FETCH_WIKIDATA
schreibt. Der Vorteil dieses Ansatzes neben dem Opt-in, d.h. das es jedem selbst überlassen bleibt wird Wikidata zu nutzen, wäre auch eine etwas bessere Transparenz da aus dem Quelltext eines Artikels ersichtlich wird woher die Daten kommen, wenn evtl. ein Fehler korrigiert werden soll, während das beim vorigen Ansatz die Daten für jemanden der in den Quelltext scheint magisch aus dem Nichts zu kommen scheinen. --Mps、かみまみたDisk. Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Mps-2014-10-29T13:13:00.000Z-Tobias1984-2014-10-28T17:51:00.000Z11- @Mps: Danke für die Hilfe. Das hat perfekt funktioniert und mir gefällt die opt-in Variante auch besser. --Tobias1984 (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Tobias1984-2014-11-02T11:58:00.000Z-Mps-2014-10-29T13:13:00.000Z11
Einzelnachweise einfügen
Ich hab jetzt eine Testinfobox auf Benutzer:Tobias1984/Testseite Warfarin zum laufen gebracht. Nur die Einzelnachweise werden noch nicht als Einzelnachweise sondern als Zeichenkette angezeigt. Ich hab gesehen, dass manche Infoboxen dafür Vorlage:Str match verwenden. Kann mir vielleicht jemand erklären wie man das zusammenstückelt? Aus den Beispielen ist mir das ganze nicht so klar. Oder sollte man diese Funktion direkt im Modul einbinden? --Tobias1984 (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Tobias1984-2014-11-02T14:58:00.000Z-Einzelnachweise einfügen11
- mit
{{#tag:ref|{{Str match|{{#invoke:Wikidata|claim|P769|references=ja}}|<ref%>(.*)</%ref>|1}}}}
wird der Einzelnachweis als Einzelnachweis dargestellt. Eine direkte Einbindung im Modul wäre aber zu bevorzugen, da die Einzelnachweise eigentlich nie als Zeichenkette benötigt werden. --Pasleim (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Pasleim-2014-11-03T10:52:00.000Z-Tobias1984-2014-11-02T14:58:00.000Z11 - Danke für den Hinweis. Seltsam, da wurde anscheinend was an der Lua-Schnittstelle geändert, dass das nicht mehr ging. Ich habe es jetzt wieder korrigiert und das ref-Tag sollte jetzt korrekt wiedergegeben werden. Davon abgesehen: könntet ihr mir mal Vorlagen nennen die deswegen
Str match
verwendet haben, damit ich schauen kann, ob die noch funktionieren und evtl. anpassen kann? --Mps、かみまみたDisk. Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Mps-2014-11-03T14:19:00.000Z-Tobias1984-2014-11-02T14:58:00.000Z11- In Vorlage:Infobox Tischtennisspieler hatte ich
Str match
verwendet, habe aber die Infobox bereits angepasst. --Pasleim (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Pasleim-2014-11-03T20:00:00.000Z-Mps-2014-11-03T14:19:00.000Z11- @Mps, Pasleim: Danke euch beiden. Das klappt jetzt wunderbar. --Tobias1984 (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Tobias1984-2014-11-09T13:54:00.000Z-Pasleim-2014-11-03T20:00:00.000Z11
- In Vorlage:Infobox Tischtennisspieler hatte ich
PageId irgendeiner Seite auslesen
Geht das? –ðuerýzo ?! SOS Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Queryzo-2014-11-08T22:35:00.000Z-PageId irgendeiner Seite auslesen11
- Man kann nur die Id der aktuellen Seite auslesen. --Mps、かみまみたDisk. Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Mps-2014-11-08T23:31:00.000Z-Queryzo-2014-11-08T22:35:00.000Z11
- Ist das genau die gleiche Frage wie aktuell ganz unten? --Jobu0101 (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Jobu0101-2016-01-12T11:09:00.000Z-Mps-2014-11-08T23:31:00.000Z11
- Stimmt! Du siehst, mein Gehirn arbeitet zyklisch!
–Queryzo ?!
Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Queryzo-2016-01-12T11:22:00.000Z-Jobu0101-2016-01-12T11:09:00.000Z11
- Es ist ja gut möglich, dass sich in der Zwischenzeit etwas getan hat. --Jobu0101 (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Jobu0101-2016-01-12T11:26:00.000Z-Queryzo-2016-01-12T11:22:00.000Z11
- Stimmt! Du siehst, mein Gehirn arbeitet zyklisch!
- Ist das genau die gleiche Frage wie aktuell ganz unten? --Jobu0101 (Diskussion) Wikipedia Diskussion:Lua/Modul/Wikidata/Archiv/2014#c-Jobu0101-2016-01-12T11:09:00.000Z-Mps-2014-11-08T23:31:00.000Z11