Vorlagenprogrammierung Diskussionen Lua Unterseiten
Modul Deutsch English

Modul: Dokumentation

WikidataScheme – Modul zur Unterstützung beim Erstellen neuer Datenobjekte (Items, „Q“) auf Wikidata, und ggf. bestehende Objekte vervollständigen.

Für bestimmte Objekte der (realen) Welt sollen hier immer oder häufig benötigte Eigenschaften (Property) und deren Werte (andere typische Items) sowie Qualifikatoren übersichtlich angeboten werden.

  • Die Darstellung ist nicht an einzelne menschliche Sprachen gebunden; sie soll global die Mehrsprachigkeit der Bezeichnungen und Beschreibungen auf Wikidata ausnutzen und durch vielsprachige spezielle Textbausteine ergänzen.
  • Die empfohlene Struktur eines neuen Datenobjekts sollte auch mittels eines Gadgets in einem individuell generierten Formular möglich sein, das zunächst vollständig ausgefüllt werden kann und anschließend eine Abspeicherung auf einen Schlag ermöglicht. Zurzeit müssen mit der Standardmethode viele Einzelbereiche zunächst erzeugt und danach publiziert werden. Welche Bereiche benötigt werden und welche Identifizierer dafür hilfreich sind ist relativ umständlich aus dem globalen Angebot auszuwählen.
  • Eine globale Community an Interessenten kann sich sprachunabhängig darauf verständigen, welche Eigenschaften mit bevorzugt welchen anderen Items bestimmte thematische Objekte haben sollen.

Siehe das Szenario zu einem allgemeinen Überblick.

Funktionen für Vorlagen

Alle Arbeitsfunktionen erwarten als ersten und einzigen Pflichtparameter eine Spezifikation.

form
Generiere HTML-Code mit einer Beschreibung der einzugebenden Entities (in Benutzersprache)
Pflichtparameter:
  • 1 – JSON-Daten mit einer Spezifikation, oder Name einer Lua-Seite als mw.loadData
Rückgabewert: HTML-Code
format
Exportiere die Spezifikation als wohlformatiertes JSON
Pflichtparameter:
  • 1 – JSON-Daten mit einer Spezifikation, oder Name einer Lua-Seite als mw.loadData
Rückgabewert: JSON-Code
JSON
Exportiere die Spezifikation als wohlformatiertes JSON mit aufgelösten symbolischen Namen
Pflichtparameter:
  • 1 – JSON-Daten mit einer Spezifikation, oder Name einer Lua-Seite als mw.loadData
Rückgabewert: JSON-Code
failsafe
Versionsbezeichnung (lokal): 2022-05-16
Optionaler Zusatzparameter:
  • 1 – Mindestversionsbezeichnung oder wikidata oder ~
{{#invoke:TemplUtl|failsafe}} ergibt 2022-05-16
Mit Angabe eines Parameters als Datum im ISO-Format wird verglichen, ob das aktuelle Modul diese Version oder später erfüllt.
  • {{#invoke:TemplUtl|failsafe|2001-01-01}} ergibt: »2022-05-16«
  • {{#invoke:TemplUtl|failsafe|2099-01-01}} ergibt: »« – leer, falls Mindestversionsbezeichnung nicht erfüllt
Ist dieser Zusatzparameter das Schlüsselwort wikidata, so ist der Wert die auf Wikidata registrierte Versionsbezeichnung (2022-05-16) oder lokal, falls dort keine gefunden.
  • Ist der Zusatzparameter das Zeichen ~, so ist das Ergebnis leer, falls Übereinstimmung der lokalen mit der auf Wikidata registrierten Versionsbezeichnung besteht ().
Rückgabewert:
  • Leer, falls Mindestversionsbezeichnung nicht erfüllt, oder Übereinstimmung mit Wikidata
  • Versionsbezeichnung (auf Wikidata registriert:2022-05-16) bei wikidata, oder lokal falls dort keine gefunden, bzw. leer wenn synchronisiert

Beispiele (Testseiten)


Allgemeine Hinweise zur Einbindung von Modulen

Eine Einbindung erfolgt jeweils im Format

{{#invoke: WikidataScheme | Funktionsname | Wert1 | Wert2 | NameX=Wert … }}

Die Parameter können wie bei Vorlagen benannt oder unbenannt sein; deren Regeln gelten analog.

Wenn unbekannte Zeichenketten von außen kommen (als Vorlagenparameter), sollte immer mit der Form 1=Wert gearbeitet werden.

Zu allgemeinen Problemen beachte die Abhilfen wie bei Vorlagen.

Wenn in einer Vorlage ein Modul verwendet wird, sollte auch immer die Vorlage:Dokumentation/Lua in der Dokumentationsseite eingebunden werden.

  1. Das gibt einem Programmierer Aufschluss, dass ein Lua-Modul benutzt wird, welche/s und ggf. welche Einzelfunktion daraus, und verlinkt auf die Dokumentation.
  2. Die Modul-Dokumentationen bekommen ein Link, in welchen Vorlagen sie eingesetzt werden, und wo bei eventuellen Funktionsänderungen Anpassungen erforderlich werden.
  3. Die Vorlage wird zur Übersicht kategorisiert in Kategorie:Vorlage:mit Lua-Programmierung.

Zu weiteren Informationen siehe Hilfe:Lua.

Bei Problemen wende dich bitte an die Vorlagen-Werkstatt, in schweren Fällen hilft auch die Lua-Werkstatt.