Mittwoch, 26. November 2008

A4: XPath - Kopfweh inklusive, eine bittere Wahrheit

Mein Modell habe ich bereits in einem früheren Blog-Eintrag vorgestellt. Meine dazugehörigen XPath Abfragen sind die folgenden (in der Realität auch tatsächlich gestellten Fragen):
  • Zu welchen Tumoren wurde noch kein Krebsmeldeblatt angelegt? (Eigentlich wollte ich folgendes abfragen: Zu welchen Erst- und Zweit-Tumoren wurde noch kein Krebsmeldeblatt angelegt? Warum das nicht geht, seht ihr wenn die Scrollleiste am unteren Browserrand ansteht) - Ärzte sind verpflichtet bei allen neu aufgetretenen Tumoren (Also Erst-,Zweittumoren, nicht aber Rezidive oder Residuen) ein Krebsmeldeblatt an das Krebsmelderegister der Statistik Austria zu senden.
  • Untersuchungen, bei denen ein Residuum entdeckt wurde (Da hat dann der Chirurg zu wenig weggeschnibbelt)
  • Die Ausdehnung aller benignen Tumoren des Patienten mit der SVNR 1234010155 (knifflig!)
Schon bei Anfrage 3 werde ich etwas stutzig - die XML Arbeitsumgebung markiert das ResultSet nicht wie gewohnt rot.

Weiter gings mit Teil 2 - XPath Abfragen für das Regierungs-Modell. Auf der verzweifelten Suche nach *sinnvollen* Abfragen fallen mir allzu banale und einige anspruchsvollere ein. Mit Hilfe der "Evaluate XPath" Funktion im XML Spy (der die Abfragen live beim Tippen aktualisiert und so auf dem Lösungsweg unterstützt) sind bald alle fertig formuliert - doch die XML Arbeitsumgebung hält einen Teil davon für ungültig. Es kommen leichte Zweifel auf: propriätäre Funktionen von XML Spy? Nein, die W3C XPath Recommendation enthält sie ebenfalls. Also schnell ein paar ganz simple Abfragen testen: number(), current-date(), ... und siehe da: denkste! Die Arbeitsumgebung wird doch nicht ...

Ein paar Tests in Xalan und Saxon später: Xalan verweigert seinen Dienst, Saxon liefert genau das erwartete Ergebnis. Jetzt noch schnell am Almighty einloggen und "env" tippen - sofort sticht "CLASSPATH= (...) /opt/Axis/lib/xercesImpl.jar" ins Auge. Xalan baut auf Xerces auf, und unterstützt nur XPath 1 - das gilt dann auch für das Frontend in der Arbeitsumgebung.

Schade :(

3 Kommentare:

Michael Derntl hat gesagt…

Ja es basieren auch die VO Folien (noch) auf XPath v1.

XPath 2.0 ist "erst" seit letztem Jahr eine W3C Recommendation, wird aber noch nicht von allen libraries unterstützt. Daher bleiben wir vorerst bei 1.0.

David Selig hat gesagt…

alles klar...

Manfred Klaffenboeck hat gesagt…

Gut zu wissen! Danke für diesen Blogeintrag, Martin ;-)