02 Dezember 2007

eXist

...es ist kalt, stürmisch, regnerisch und am frühen Nachmittag schon wieder stockdunkel. Was liegt da näher, als sich vor den knisternden Kamin flimmernden Monitor zu setzen und sich Software anzusehen, die man schon länger mal testen wollte. Heute werfe ich also mal einen kurzen Blick auf die XML-Datenbank eXist. Mein Gebastel fängt auch gleich recht unglücklich an - die jars von der Seite wollten nicht wirklich (weder die 1.0.2-rev5396 noch die 1.1.1-newcore) - im IRC rät man mir aber prompt zu den pre-release-binaries, die sich dann auch problemslos installieren lassen (1.1.2dev rev7005). So, Server angeworfen und auf Port 8080 kann man auch gleich das WebGui bewundern, sich einloggen und über 'Examples Setup' ein paar Testdaten importieren. In der XQuery-Sandbox kann man dann auch schon die ersten Anfragen abschicken, fein.
Als nächstes wollte ich ein paar eigene XML-Dateien in die Datenbank importieren - dies war mit dem Webstart-Client nicht wirklich ein Problem: Einfach das ganze Verzeichnis mit den XML-Dateien als neue Collection auswählen und danach die Maschine arbeiten lassen. In der Zwischenzeit könnte man sich z.B. XQuery ein wenig genauer ansehen...
Im Zusammenhang mit PHP ist mir XQuery bislang nur in Form der XQuery-Lite-Klasse über den Weg gelaufen, PHP5 selbst beherrscht ja nur XPath. Wie kommt man nun aber mit einem PHP-Script an die soeben in die frisch installierte Datenbank geschriebenen Daten? Am Einfachsten ist wohl der Zugriff über SOAP - einfach deshalb, da es schon eine PHP (bzw. Perl) -Klasse gibt, die einem die lästige Arbeit mit SOAP abnimmt. Die Klasse ::PheXist:: von Òscar Celma bringt schon die nötigen Methoden (connect, xquery, ...) mit und funktionierte in einem ersten Test tadellos.

Labels: , , ,