XSLT-Transformation und Darstellung
Rainer Reitz
- xml
Hallo zusammen,
wir haben ein Projekt, das aus 500 XML-Files (mit internen Pfadangaben auf andere XML-Files) per täglichem Batchlauf (X)HTML-Seiten zusammenbauen soll; dabei sollen Company-CSS eingebunden werden.
Ich habe schon recherchiert, was im einzelnen für eine solche Umsetzung 'angesagt' ist:
1. IDE: oxygen XML (aus Rumänien)
2. XSLT Prozessor Apache Xalan
3. Parser Apache Xerces
4. Webserver Apache / Tomcat
5. JDK
6. ... ???
Die 500 XML-Files resp. deren Verlinkung auf andere XMLs enthalten die vollständige Information für die HTML-Seiten.
Das Ganze soll nicht im Browser, sondern auf dem Server prozessiert werden.
Welche Vorschläge für eine sattelfeste, 'zukunftssichere' Umsetzung habt ihr denn so? Welche Tools/Methoden habt ihr denn schon praktisch eingesetzt?
Vielen Dank!!!
Hallo,
wir haben ein Projekt, das aus 500 XML-Files (mit internen Pfadangaben auf andere XML-Files) per täglichem Batchlauf (X)HTML-Seiten zusammenbauen soll; dabei sollen Company-CSS eingebunden werden.
Ich habe schon recherchiert, was im einzelnen für eine solche Umsetzung 'angesagt' ist:
- IDE: oxygen XML (aus Rumänien)
- XSLT Prozessor Apache Xalan
- Parser Apache Xerces
- Webserver Apache / Tomcat
- JDK
- ... ???
Die 500 XML-Files resp. deren Verlinkung auf andere XMLs enthalten die vollständige Information für die HTML-Seiten.
Das Ganze soll nicht im Browser, sondern auf dem Server prozessiert werden.
Welche Vorschläge für eine sattelfeste, 'zukunftssichere' Umsetzung habt ihr denn so? Welche Tools/Methoden habt ihr denn schon praktisch eingesetzt?
Die IDE ist nur dann relevant, wenn ihr z.B. damit auf die XML-Dateien direkt in einer DB zugreifen wollt.
Für die Serverseitige Umgebung kommen drei relevante Technologien in Frage:
PHP: mit XSL-Funktionen (libXSLT) oder PHP mit Sablotron
.NET: entweder mit dem MSXML, oder AltovaXML 2006 (COM, Java, and .NET Interface) oder Saxon on .NET
Bei AltovaXML ist auch eine Microsoft and Visual Studio.NET Integration möglich (vermutlich auch bein Saxon on .NET, habe aber nie ausprobiert).
Java: Saxon oder Xalan, wobei ich, wenn es keine Features gibt die nur Xalan bietet, auf diese verzichten würde: der Bug bei xsl:key in 'Muenchian Grouping' in Verbindung mit xsl:sort ist sehr ärgerlich und über 3 Jahre alt und noch immer nicht behoben, auch andere Probleme z.B. bei last() sprechen nicht gerade für Xalan.
Um ein "Framework" wirst du nicht herumkommen, ob dies nur in Form von batch-Dateien und Cron-jobs geschiet oder mittels Direkttransformation bei aufruf der Webseiten.
Die Frage ob OpenSource oder kommerziell ist weniger eine Frage der Umsetzungsqualität. Vor allem ist es natürlich eine Frage der Kosten, dann würde ich z.B. sehr viel Wert auf _gut_ dokumentierte APIs legen: PHP fällt hier derzeit eher negativ auf.
Denkbar sind natürlich viele andere Kombinationen: bei allen sollte aber bei der Wahl vor allem die Wartbarkeit, angefangen bei Installation bis hin zu Updates oder die Möglichgkeit eigene Erweiterungen zu Implementieren beachtet werden. Da diese Sachen, aber nicht rein softwarespezifisch sind (wer kann bei euch was und wie gut), kann man keine konkrete Aussagen treffen.
Auch die Features der eingesetzen Software spielt eine große Rolle: XSLT 2, oder reicht XSLT 1.0, braucht ihr Schema-Validation oder XQuer etc.
Gerade hier bei uns für den Selfraum stellt sich auch die Frage nach einer XML/XSLT Umgebung und wir sind auch dabei diese Fragen für uns zu klären.
Grüße
Thomas