Vorlage:ISO Kat/Doku
Diese Seite ist die Dokumentations-Unterseite der Vorlage:ISO Kat. |
Diese Vorlage dient der automatischen Kategorisierung in einem definierten und strukturell einheitlichem Kategoriebaum in Abhängigkeit von einer ISO Regionsangabe. Die Vorlage ist für die automatische Vergabe von Kategorien nach einem Schema aus Infoboxen heraus gedacht.
Kopiervorlage
{{ISO Kat|Region-ISO=|Kat-Root=|Kat-Schema=in|Kat-Kontinent=ja}}
Beispiele
Vorlage | Ist-Ergebnis (Links mehrfach, Kats nur einfach) | Soll-Ergebnis |
---|---|---|
{{ISO Kat|Region-ISO=AT-5|Kat-Root=Berg|Kat-Schema=in}} | Kategorie:Berg in Salzburg | |
{{ISO Kat|Region-ISO=AT-5/AT-7|Kat-Root=Berg|Kat-Schema=in}} | Kategorie:Berg in Salzburg, Kategorie:Berg in Tirol | |
{{ISO Kat|Region-ISO=AT-5/AT-7|Kat-Root=Insel|Kat-Schema=()}} | Kategorie:Insel (Österreich) | |
{{ISO Kat|Region-ISO=AT-3|Kat-Root=Insel|Kat-Schema=()|Kat-Kontinent=ja}} | Kategorie:Insel (Österreich) | |
{{ISO Kat|Region-ISO=RU|Kat-Root=Insel|Kat-Schema=()|Kat-Kontinent=ja}} | Kategorie:Insel (Russland), Kontinent nicht eindeutig |
Schnittstellen
Für das Schema in ist es notwendig, sprachlich korrekt die Ortsangabe zu einer ISO Region zu definieren. Standardmäßig wird in region erzeugt, also etwa Pass in Österreich, Berg in Südtirol. Das passt für die meisten Regionen. Abweichungen etwa für die Türkei Pass in der Türkei können nur erzeugt werden, wenn in den entsprechenden Info ISO-3166-2 Vorlagen der neue Parameter in entsprechend versorgt wird (Bsp. für die Türkei).
Parameter
Parameter | Beschreibung | Beispiele |
---|---|---|
Region-ISO | ISO Region in der üblichen Schrägstrichnotation, bis zu vier Regionen | AT-5, AT, AT-7/DE-BY, AT-7/DE, AT-4/AT-5/AT-6 |
Kat-Root | Name der Root-Kategorie, diese dient als Präfix für die Erzeugung der ISO gemäßen Kategorien | Berg, See, … |
Kat-Schema | Schema der Kategorienamensgenerierung, Aufzähltyp. Mögliche Werte sind in () |
Berg in Bayern Berg (Bayern) |
Kat-Kontinent | Falls ja, wird auch die Kategorie für den Kontinent erzeugt. Doppelkategorisierung ist bei vielen geographischen Objekten üblich. | Berg in Europa |
test | Testparameter, falls gesetzt, unterdrückt er die Generierung der Kategorien und erzeugt nur den Text für die Kategorien. |
Requirements
- Es werden nur existierende Kategorien erzeugt. Falls eine fehlende Kategorie später angelegt wird, dann wird sie automatisch gefüllt.
- Existiert eine Kategorie auf unterster ISO 2 Ebene nicht, dann wird die passende Kategorie auf ISO 1 Ebene erzeugt, existiert sie auf Ebene 1 nicht, dann wird sie auf Ebene 0 erzeugt.
- Die Generierung der Kategorienamen erfolgt mit der grammatikalisch richtigen Flexion. Also Berg in Tirol, aber Berg in der Steiermark, Berg auf den Philippinen, Berg in den Vereinigten Staaten
Design
Das Schema () ist einfach zu realisieren, es wird einfach der in den Info Vorlagen enthaltene name eingesetzt. (Bsp. für Niederösterreich: {{Info ISO-3166-2|code=AT-3|name}}=Niederösterreich) Für das Schema in muss eine korrekte Namensumsetzung irgendwo definiert werden, da dies grammatikalisch richtig nicht zu generieren ist. Die Vorlage:Info ISO-3166-2 erhält einen neuen Schnittstellenparameter in, mit dem diese Flexion abgefragt werden kann. Diese liefert entweder den abgespeicherten Wert oder den Defaultwert zurück. Der Defaultwert ergibt sich als in name.
Der erzeugte Kategoriename wird einem Existenztest unterzogen. Wenn die Kategorie existiert, dann wird sie erzeugt, existiert sie nicht, dann erfolgt eine Wiederholung derselben Prozedur auf der nächsten ISO Ebene, maximal aber auf country/state-Ebene (level 0).
Untervorlagen
- Die Vorlage
{{ISO Kat}}
ist die öffentliche Schnittstelle, sie macht die Parameterprüfung und die Aufspaltung der Region-ISO, falls mehrere Regionen durch / getrennt angeführt werden. - Die Vorlage
{{ISO Kat~}}
hat die gleiche Schnittstelle wie{{ISO Kat}}
, erwartet in Region-ISO aber genau einen Wert. - Die Vorlage
{{ISO Kat~/KatName}}
baut den Kategorienamen zusammen unter Beachtung des Kat-Schemas. Danach muss noch die Existenzprüfung erfolgen. - Die Vorlage
{{ISO Kat~/KatGen}}
erzeugt die Kategorie (unter Berücksichtigung von test)