XSLT Checker

Das kostenlose Tool zum Aufspüren von ungenutzten XSLT-Befehlen

Der XSLT Checker, ein kleines Projekt von data2type, ist ein kommandozeilenbasiertes Tool und steht auf GitHub zum kostenlosen Download zur freien Verfügung.

Was kann der XSLT Checker?

Er analysiert vorhandene XSLT-Stylesheets anhand eines XML-Eingabedatensatzes. Als Ergebnis erhält man eine Übersicht über alle XSLT-Befehle, die bei der Verarbeitung der Eingabedaten nicht verwendet wurden.

Wozu das Ganze?

In der Praxis gibt es sehr oft Projekte, bei denen XSLT-Stylesheets über Jahre hinweg weiterentwickelt, meist von mehreren Entwicklern verändert, angepasst und somit auch "aufgebläht" werden, d.h. es können sehr viele Templates und Befehle drinstecken, die mittlerweile "tot" sind oder gar nicht mehr verwendet werden.

Diese unnötigen Befehle erschweren das Lesen und Verstehen der Stylesheets und verlangsamen außerdem die Performance der Verarbeitung.

Mit Hilfe des XSLT Checkers können zum Beispiel auch Änderungen im verwendeten XML Schema und verschiedene Abhängigkeiten im Code erkannt werden sowie Änderungen bei der Verwendung von bestimmten Elementen und Attributen im XSLT (z.B. xsl:if {@val}).

Wie funktioniert der Checker?

In der folgenden Abbildung ist der Ablauf schematisch dargestellt: Der XSLT Checker prüft XML-Dateien gegen Stylesheets und gibt eine Zusammenfassung aus.

So funktioniert der XSLT Checker

Abbildung: So funktioniert der XSLT Checker.

Die Ausgabe beinhaltet zwei Versionen desselben Berichts: eine Textdatei sowie ein XML. Darin sind alle nicht-genutzten XSLT-Befehle mit Zeilenangabe im Stylesheet sowie deren Position (z.B. zur Abfrage in XPath) zu finden.

Eine detaillierte Bedienungsanleitung für den XSLT Checker finden Sie auf Englisch auf unserer GitHub-Seite.

Welche XSLT-Elemente werden geprüft?

  • xsl:for-each
  • xsl:for-each-group
  • xsl:if
  • xsl:when
  • xsl:otherwise
  • xsl:template

Die folgende Abbildung zeigt zwei beispielhafte Anwendungsfälle für den Checker:

  1. Ein Namensraum, auf den ein Template treffen soll, kann sich geändert haben oder
  2. Zu prüfende Bedingungen in einem xsl:choose-Konstrukt wurden umformuliert.

XSLT Checker - Beispiele

Abbildung: XSLT Checker - Beispiele.

Voraussetzungen zum Gebrauch des Checkers

Folgende Voraussetzungen müssen für den Gebrauch des XSLT Checkers gegeben sein:

  • Er funktioniert nur auf Windows-Systemen.
  • Java muss auf dem Rechner installiert und die Umgebungsvariable java sollte gesetzt sein.
  • Die verwendeten Stylesheets müssen mit dem Saxon 8.9 kompatibel sein.
  • Die verwendeten Stylesheets müssen in Bezug auf die Eingangsdaten valide sein.
  • Nur ein Stylesheet-Aufruf wird unterstützt. Eine XSLT-Pipeline kann vom Checker nicht verarbeitet werden.

   

<< zurück vor >>