Clark Notation Bei der Clark Notation kann dem Elementbezeichner mittels geschweifter Klammerung der benötigte Namespace vorangestellt werden. Das sieht z.B. wie folgt aus - wenn man auch gleich noch das ? -Prefix voranstellt:
?{http://www.tekturcms.de/namespaces/mein-namespace}spezieller-verarbeitungs-modus=true()Plain TextIm aufgerufenen Stylesheet wird zunächst der Namespace deklariert, dann der Parameter gesetzt und schliesslich die Logik angegeben:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tk="http://www.tekturcms.de/namespaces/mein-namespace" exclude-result-prefixes="xs" version="2.0"> <xsl:param name="tk:spezieller-verarbeitungs-modus" select="false()" as="xs:boolean"/> <xsl:template name="main"> <xsl:choose> <xsl:when test="$tk:spezieller-verarbeitungs-modus">Gut</xsl:when> <xsl:otheriwse>Schlecht</xsl:otheriwse> </xsl:choose> </xsl:template> </xsl:stylesheet>Plain Text
Diesen Sonderfall braucht man eigentlich nur, wenn man in eine bestehende Transformation einen Parameter einführen will, dessen Bezeichner schon existiert, um so einen Namenskonflikt zu vermeiden - gesehen bspw. bei komplexen Schematron Regeln.