Hilfe:TemplateData

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Hilfe < Bausteine < Vorlagen < TemplateData

Dieses Element ermöglicht die Generierung von Angaben über Vorlagen, mit denen sich gültige Einbindungen überprüfen lassen und automatische Dokumentationen und Anwendungshinweise erstellt werden können.

Grundprinzip[Bearbeiten | Quelltext bearbeiten]

Die als TemplateData vereinbarten Informationen über den Zweck der Vorlage und vor allem die detaillierte Beschreibung der Parameter haben zwei Anwendungsbereiche:

  • Erstellung einer standardisierten Dokumentationsseite oder eines wesentlichen Teils davon
  • Auswertung und automatische Generierung von Eingabeformularen für die Parameter nebst automatisierter Gültigkeitsprüfung der Werte schon bei der Eingabe. Dafür gibt es zurzeit zwei Anwendungen:
    1. VisualEditor – aktueller Anlass für die Entwicklung.
    2. Vorlagenmeister – früherer Ansatz, über eine XML-Spezifikation; mit einem Eingabeformular zum Einfügen in den Quelltext der Wikiseite. Falls keine (detailliertere) XML-Beschreibung für eine bestimmte Vorlage vorhanden ist, wird ersatzweise die TemplateData-Struktur zur Produktion eines Eingabeformulars und zur Gültigkeitsprüfung der Eingabedaten herangezogen.

Das Grundprinzip wurde üblichen Software-Dokumentationswerkzeugen entnommen; ist etwa an die mit javadoc zu gewinnenden Informationen angelehnt.

Technisch werden die TemplateData in einem <templatedata>...</templatedata>-Element kodiert, das im Abschnitt Struktur des JSON-Objekts beschrieben wird. Der Inhalt wird von der Software automatisch in Form einer Tabelle dargestellt, durch die im Prinzip die hergebrachte Parameterdokumentation ersetzt werden kann. Voraussetzung ist die syntaktische und semantische Richtigkeit.

Diese werden mit der Vorlagendefinition in Verbindung gebracht. In der deutschsprachigen Wikipedia sollte dies immer auf der Dokumentationsseite /Doku geschehen und nicht direkt im Quelltext der Vorlagenprogrammierung.

  • In der Versionsgeschichte der eigentlichen Programmierung sollen ausschließlich Änderungen an der wirksamen Programmierung erscheinen, niemals jedoch nachrangige Formulierungsverbesserungen an der Dokumentation; diese gehört deshalb auf die Unterseite /Doku.

Dabei wird das Element <templatedata>…</templatedata> immer in eine {{TemplateData}} eingeschlossen, die für eine Umrahmung und eine Verlinkung mit dieser Hilfeseite sorgt.

Die Inhalte von TemplateData sind dafür vorgesehen, in universell nutzbarem Format einfache und kurze Texte bereitzustellen; etwa in Tooltips oder automatisierten Dokumentationssystemen unabhängig vom Wikiprojekt. Elaborierte und komplexe Darstellungen müssen nach wie vor in gesondertem Wikitext aufbereitet werden.

Formulargestützte Erstellung und Bearbeitung[Bearbeiten | Quelltext bearbeiten]

Schritt 1: Vorlagendokumentations-Editor aufrufen[Bearbeiten | Quelltext bearbeiten]

Auf Vorlagen- oder deren Dokumentationsseiten kann das TemplateData-Element automatisch erzeugt werden indem man in den Bearbeitungsmodus geht und dort auf den Knopf Vorlagendaten verwalten am Seitenkopf klickt. Auf die gleiche Weise können bestehende TemplateData-Elemente nachträglich bearbeitet werden.

Wichtig: Wenn ein neues TemplateData-Element erstellt werden soll, sollte immer zuerst die Vorlagenseite entsprechend aufgerufen werden, da nur so der nachfolgende Editor alle Parameter der Vorlage automatisch finden und importieren kann. Das wie nachfolgend beschrieben am Ende erzeugte templatedata-Element sollte dann auf die entsprechende Dokumentationsseite kopiert und die Änderungen an der Vorlagenseite verworfen werden.

Schritt 2: Parameter automatisch importieren lassen oder manuell hinzufügen[Bearbeiten | Quelltext bearbeiten]

Abbrechen
Anwenden
Vorlagendokumentations-Editor
Sprache hinzufügen
DeutschBlack triangle.svg

Sprache

Vorlagenbeschreibung (de)

Kurzbeschreibung der Vorlage


Parameterreihenfolge

 
Parameter1
 
Parameter2
 
Parameter3
 
Parameter4


Vorlagenparameter

 
Parameter1
Beschreibung des 1. Parameters
 
Parameter2
Beschreibung des 2. Parameters
 
Parameter3
Beschreibung des 3. Parameters
 
Parameter4
Beschreibung des 4. Parameters
Parameter hinzufügen

Nach dem Klick auf den Knopf erscheint der rechts abgebildete Vorlagendokumentations-Editor, der im Abschnitt Vorlagenparameter die gefunden Parameter auflistet, die mit einem Klick auf vorgeschlagene Parameter hinzufügen importiert werden können, die dann alle wie rechts beispielhaft abgebildet aufgelistet werden.

Die einzelnen Abschnitte sind:

Sprache
Hiermit kann die Dokumentationssprache der Vorlage geändert werden in dem mit einem Klick auf Sprache hinzufügen eine neue hinzugefügt oder aus dem Auswahlliste eine bestehende ausgewählt werden kann. Generell ist dies jedoch nicht notwendig und sollte auf Deutsch belassen werden.
Vorlagenbeschreibung (de)
In diesem Abschnitt sollte eine knappe einzeilige Beschreibung der Vorlage eingegeben werden, die dann im VisualEditor neben dem jeweiligen Vorlagennamen aufgeführt wird.
Parameterreihenfolge
Hier werden alle gefunden Parameter aufgeführt und deren Reihenfolge ausgegeben. Bei einem Parameterimport kann die Reihenfolge evtl. durcheinander sein und hier mittels Drag and Drop korrigiert werden. Die Reihenfolge beeinflusst, dabei nicht die Auflistung der Parameter im Vorlagen-Formular des VisualEditors, sondern auch im endgültigen Quelltext. Die Reihenfolge der Parameter sollte daher stets mit der von evtl. Beispielen, Kopierschnipseln usw. der jeweiligen Vorlagendokumentation übereinstimmen.
Vorlagenparameter
Diese wichtigste Abschnitt listet alle gefunden Parameter und deren Kurzbeschreibung, sowie vorhanden. Mit einem Klick auf den jeweiligen Parameter können bzw. bei einem neuen TemplateData-Element müssen hier die Zusatzinformationen (Metadaten) der Parameter hinzugefügt werden. Dabei erscheint ein weiteres Formular wie nachfolgend abgebildet.
Parameter hinzufügen
Am Ende des Formulars befindet sich ein weiter Knopf mit weitere Parameter hinzugefügt werden können, falls der automatische Import diese übersehen hat oder die Vorlage nachträglich um weitere Parameter ergänzt wurde.
Anwenden
Änderungen übernehmen und TemplateData-Element ausgeben.

Schritt 3: Parameter beschreiben[Bearbeiten | Quelltext bearbeiten]

Zurück
Vorlagendokumentations-Editor
Name
 
Aliasse (durch Kommas getrennt)
 
Bezeichnung (de)
 
Beschreibung (de)
 
Beispiel (de)
 
Typ (de)
 
Standard (de)
 
Autowert
 
Veraltet
 
Erforderlich
 
Vorgeschlagen
 
Parameterinformationen entfernen

Das Vorlagenparameter-Formular besitzt folgende Felder:

Name
Bezeichnet den primären Namen des Parameters, d. h. denjenigen der am Ende ausgegeben werden soll. Unbenannte Parameter bekommen eine Nummer, die deren Position in der Vorlage angibt.
Aliasse
Listet die alternativen Namen des Parameters auf, wobei die einzelnen Einträge durch Kommas getrennt werden müssen. Hinweis: Wenn die Parameter automatisch importiert wurden, werden für alternativen Namen im vorigen Formular ebenfalls Einträge angelegt, da die Importmechanismus nicht erkennen kann, ob ein Parametername eine Alternativbezeichnung oder ein eigenständiger Parameter ist. Diese falschen Parametereinträge müssen in diesem Formular mit einem Klick auf den Knopf Parameterinformationen entfernen am Formularende gelöscht werden und deren Namen im Aliasse-Feld des korrekten Parametereintrags eingetragen werden.
Bezeichnung
Falls von dem Parameternamen nicht automatisch auf die Funktion geschlossen werden kann, kann hier eine verständlichere Bezeichnung angegeben werden, die im VisualEditor verwendet werden soll.
Beschreibung
Eine Beschreibung der Funktion des Parameters. Hinweis: Die Beschreibung unterstützt keine Wikitext-Sprachelemente wie Links, Formatierungen, usw., so dass auf diese verzichtet werden muss.
Beispiel
In diesem Feld kann ein Beispielwert angegeben werden, der im VisualEditor bei noch leeren Parametern anfangs angezeigt wird, damit der Vorlagennutzer erkennen kann, wie ein gültiger Eintrag aussehen muss.
Typ
Hier kann der Datentyp des Parameters angegeben werden, d. h. welche Werte der Parameter akzeptiert. Dabei kann nach folgende Checkliste vorgegangen werden, d. h. der Parameter erlaubt:
  1. Wikitext, z. B. Wikilinks, Formatierungen → Inhalt
  2. nur Name einer Medien- bzw. Bilddatei ohne Präfix (z. B. Datei:, Bild:, …) → Datentyp Datei
  3. nur Benutzername → Benutzer
  4. nur Artikel- oder sonstiger Seitenname → Seite
  5. nur Zahl, idealerweise ohne Tausendertrennzeichen und mit Punkt . als Dezimaltrenner → Nummer
  6. nur Datum nach ISO 8601, d. h. üblicherweise JJJJ-MM-TT → Datum
  7. nur Wahrheitswert mit 0 = Nein und 1 = Ja → Boolesch
  8. akzeptiert nicht wohlgeformten Wikitext, z. B. schließendes Tag ohne öffnendes Tag und umgekehrt → Unausgeglichener Wikitext
  9. sonstiger einzeiliger Text → Zeile
  10. sonstiger mehrzeiliger Text → Zeichenfolge
  11. unbekannt → Nicht definiert
Standard
Hier kann angegeben werden, welcher Wert von der Vorlage implizit angenommen wird, wenn der Parameter nicht ausgefüllt wird. Beispielsweise nutzen viele Infobox-Vorlagen den Seitentitel als Überschrift oder verwenden für Bilder eigene Bildgrößen (z. B. 200px) und besitzen einen Extra-Parameter mit dem dieses Verhalten überschrieben werden kann. In diesen Fällen kann dann bei diesen Parametern hier "Seitentitel" oder "200px" angegeben werden.
Autowert
Hier kann angegeben werden mit welchem Wert ein noch leerer Vorlagenparameter vorausgefüllt werden soll, der dann auch im Quelltext abgespeichert wird.
Veraltet
Gibt an, ob der Parameter veraltet ist. Wenn ein Parameter als veraltet markiert wurde, dann erscheint ein zusätzliches Eingabefeld in dem ein kurzer Hinweis angegeben werden sollte, wie weiter verfahren werden soll, z. B. welcher Parameter statt dessen genutzt werden sollte.
Erforderlich
Gibt an ob der Parameter unbedingt notwendig ist, damit die Vorlage ordnungsgemäß funktioniert.
Vorgeschlagen
Vorgeschlagene Parameter sind solche, deren Nutzung empfohlen wird, d. h. jene die am häufigsten verwendet werden. Diese werden im VisualEditor immer angezeigt und müssen nicht erst ergänzt werden und werden am Ende auch immer im Quelltext ausgegeben, selbst wenn sie nicht ausgefüllt wurden.
Parameterinformationen entfernen
Hiermit kann der Parameter gelöscht werden. Dies sollte nur gemacht werden, wenn der Parameter entweder aus der Vorlage vollständig entfernt wurde oder ein Alternativname eines bestehenden Parameters ist. Parameter die nicht mehr verwendet werden sollten und nur aus Kompatibilitätsgründen noch von der Vorlage unterstützt werden, sollten statt dessen als Veraltet markiert werden.
Zurück
Änderungen übernehmen und zur Parameterübersicht zurückkehren.

Schritt 4: Änderungen übernehmen[Bearbeiten | Quelltext bearbeiten]

Nachdem alle Parameter beschrieben wurden, kann im Hauptformular auf Anwenden geklickt werden, woraufhin das TemplateData-Element erstellt wird. Falls die Vorlage eine Dokumentationsseite besitzt und man wie Eingangs beschrieben das TemplateData-Element auf der Vorlagenseite erzeugt hat, bitte das Element auf die Dokumentationseite kopieren und die Änderungen an der Vorlagenseite verwerfen.

Nach einer inhaltlichen Änderung der Informationen kann man optional einen Null-Edit auf der Vorlagenseite tätigen, damit auch diese im Cache umgehend aktualisiert wird und die Metadaten baldmöglichst allen Werkzeugen zur Verfügung stehen.

Struktur des TemplateData-Objekts[Bearbeiten | Quelltext bearbeiten]

Siehe dazu Hilfe:TemplateData/JSON.

Hilfsmittel und Hilfen[Bearbeiten | Quelltext bearbeiten]

Die Verwendung von TemplateData in dieser Wikipedia wird protokolliert unter:

  • Special:PagesWithProp/templatedata
  • Kategorie:Vorlage:mit TemplateData – Besser lesbar und würde keine Weiterleitungen aufzählen; dafür sind momentan zwangsläufig Vorlagenprogrammierung und Dokumentationsseite aufgeführt.
    • Die Kategorisierung zählt nur Verwendungen auf, die in {{TemplateData}} eingeschlossen sind. Die Aufzählung der Seiten mit der templatedata-Eigenschaft auf der Spezialseite muss identisch sein mit den Doku-Seiten in der Kategorie.

Generatoren[Bearbeiten | Quelltext bearbeiten]

Alternativ zum eingebauten Vorlagendokumentations-Editor:

  • liefert das Benutzerskript jsonXMLutils aus der Vorlagenprogrammierung oder aber der Kopiervorlage einer älteren Dokumentation oder dem Quelltext einer beliebigen Einbindung ein Grundgerüst.
    • Nebenbei formatiert es auch den JSON-Code und analysiert ihn auf bestimmte mutmaßliche inhaltliche Fehler.
    • Eine XML-Struktur für den Vorlagenmeister kann aus jeder mit TemplateData ausgestatteten Vorlagendokumentation generiert werden.
  • kann mit dem vorübergehendem Einfügen von {{subst:TemplateDataGenerator}} in die Dokumentationsseite ebenfalls ein Grundgerüst generiert werden.
  • gibt es ein Benutzerskript in der französisch- und englischsprachigen Wikipedia mit einem alternativen Dialogmenü: fr:User:Ltrlg/scripts/TemplateDataEditor.js bzw. en:User:NicoV/TemplateDataEditor. Dieses befindet sich jedoch auf einem älteren Stand und unterstützt daher nicht alle Datentypen oder den „Vorgeschlagen“-Parameter (suggested), dafür aber den deprecated- und den inherited-Parameter.

Bei anhaltenden Problemen hilft die Technik-Werkstatt weiter.

Sonstiges[Bearbeiten | Quelltext bearbeiten]

Die TemplateData-Verwendung wurde im Frühsommer 2013 weltweit gestartet.

Zu technischen Details für Programmierer siehe Hilfe:TemplateData/JSON #Sonstiges.

Wenn du Wünsche hast, dann kannst du es über Phabricator mitteilen oder mitteilen lassen. Das gleiche gilt für Bugmeldungen.

Weitere Informationen[Bearbeiten | Quelltext bearbeiten]

  • Vorlage:TemplateData – Kennzeichnung generierter Dokumentationsblöcke
  • #templatedata – Phabricator-Status mit Liste bekannter Bugs und Anfragen zur Funktionalitätserweitung (englisch)