[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