[Talk-de] addr:phone vs. phone
Jochen Plumeyer
jochen at plumeyer.org
Mo Feb 8 21:29:13 UTC 2010
Moin Loide (sowie sehr geehrte Damen und Herren),
eigentlich gibt es das Format ja schon, das Rad braucht man nicht erfinden,
würde ich sagen, und heißt JSON (JavaScript Object Notation).
http://www.json.org/example.html (oben z.B.)
Das wird u.a. bei AJAX- Web-Applikationen ständig verwendet.
Das Format kann man "umgießen", also in einen einzelnen Text-String quetschen
(dann wäre es sogar kompatibel mit der v0.6 API von OSM), oder automatisch
eingerückt darstellen, wie es beliebt.
Es bietet hierarchische Struktur, Listen/ Arrays, Hashes, verschachtelte
Datenstrukturen, also eigentlich alles, was man braucht und als
Skript-Programmierer schon seit Jahrzehnten kennt.
Schnittstellen/ Libraries zu allen gängigen Programmiersprachen sind vorhanden
(C/C++, Java, Python, PHP, Flash ActionScript, Perl, etc....).
Was man dabei zunächst verlöre, wenn die Datenbank damit nicht umgehen kann,
wäre die 1:1-Beziehung zwischen k,v-Werten und Darstellung. Aber zum Glück
gibt es ja PostgreSQL, dafür gibt es sicher irgendwo eine native Umsetzung?
Wenn nicht, kann man das mit einer klassischen rekursiven Datenstruktur mit
ID-Pointern (wie bei Dateisystem-Inoden) auch mit jeder Wald- und
Wiesen-Datenbank definieren.
Ob expliziter Zugriff auf jedes Unter-Element per Datenbank performant ist,
ist eine andere Frage.
Aber vielleicht wäre so eine Umsetzung auch die Lösung für viele
Spezial-Abfragen, bei denen man heute erst einmal einen eigenen Tag-Parser
braucht, oder sehr viele Ergebnisse verwirft, weil man nicht nach einem
spezifischen Namensraum fragen kann.
Aber definitiv wäre das der systematischere Ansatz.
Meine 2 inflationären Centavos aus der 26°C warmen DomRep,
Jochen
On Lun 08 Feb 2010, Johannes Huesing wrote:
> Natürlich stößt das an Grenzen, aber ich bin nicht überzeugt, dass die
> Repräsentation in der Datenstruktur, die Du vorschlägst (so ich sie richtig
> verstanden habe) gegenüber räumlicher Ordnung und Relationen einen
> wesentlichen Vorteil bietet. Wenn die Editorschnittstelle davor das
> Entscheidende ist, ist das Datenmodell dahonter doch ohnehin zweitrangig
> (zumindest wenn es zu wenig anfängerfreundlich erscheint).
Mehr Informationen über die Mailingliste Talk-de