Nette Toiletten - einheitliches Tagging

In einer mit osem2pgsql gefüllten Datenbank findet man die Key-Value-Paare gleichberechtigt in einem Array. Sprich es ist egal ob du ein Array nach toilet im key oder im value suchst. Die Zuordnung Key oder Value geschieht einzig und allein über den Index des Arrays.
Viele Softwaretools vereinfachen sich die Auswertung der Schlüssel. Dies geschieht dadurch, dass nur die ersten X Zeichen des Schlüssels ausgewertet werden. Dies kann man recht schnell mit Teilstringfunktionen erreichen. Das heißt aber, dass der gesuchte Teilstring nicht irgendwo im String stehen darf, sondern zu Beginn des Strings stehen muss.

Sollen sie das? Mich interessiert das Finanzierungsmodell in einer Karte überhaupt nicht. Mich interessiert, wo ein Klo ist (amenity=toilets), ob ich es benutzen darf (access=yes/customer/private/no) und ob ich für die Benutzung zahlen muss (fee=*).

Und? Beim Rendern macht es keinen Unterschied. Restaurant und Klo sind sowieso 2 verschiedene Signaturen, egal ob du sie in 1 gemeinsamen oder in 2 getrennten Nodes erfasst hast.

Aber die anderen Tags gehören nicht zusammen, deshalb wird man nicht umhin kommen, 2 verschiedene Objekte zu erfassen.

Coast ist stolz darauf, mit den Tag-Value-Paaren eine einfache Struktur geschaffen zu haben, die jeder Mapper gleich versteht. Der Nachteil ist, dass komplexe Sachverhalte damit nicht vernünftig abgebildet werden können. Wenn du z.B. natural=peak + man_made=cross + name=XY + ele=123 zusammen in einem Node hast, bezieht sich name=XY dann auf den Gipfel oder aufs Kreuz? Und was ist, wenn der Gipfel einen Namen hat und das Kreuz einen anderen? Dann könntest du neue Tags einführen wie name:peak=* und name:cross=, oder name:natural:peak= und name:man_made:cross=, oder doch peak:name= und cross:name=? Das alles sparst du dir, wenn du 2 getrennte Nodes machst und die Redundanz in Kauf nimmst, dass in beiden die selbe ele= drinsteht. Genauso ist das mit den WCs.

Back to the roots? KISS? Mal ein paar Nächte darüber schlafen …
Man wird allmählich betriebsblind.