system-property()-Funktion  
Diese Funktion gibt den Wert der im Argument genannten Systemeigenschaft zurück.
 
Beschreibung

Gemäß der Definition müssen alle XSLT-Prozessoren die folgenden drei Systemeigenschaften unterstützen:

xsl:version
Eine Gleitpunkzahl, die die vom XSLT-Prozessor implementierte XSLT-Version repräsentiert. Momentan ist 1.0 die einzige von XSLT-Prozessoren unterstützte offizielle XSLT-Version.

xsl:vendor
Ein String, der den Hersteller des XSLT-Prozessors bezeichnet.

xsl:vendor-url
Ein String mit der URL, die den XSLT-Prozessor-Hersteller identifiziert. Dieser String entspricht in der Regel der Websiteadresse des Herstellers.

 
Eingaben

Die XSLT-1.0-Spezifikation definiert drei Eigenschaften: xsl:version, xsl:vendor und xsl:vendor-url. Diese Eigenschaften müssen von allen XSLT-Prozessoren unterstützt werden. Von bestimmten Prozessoren mögen auch noch andere Eigenschaften unterstützt werden, schlagen Sie dies in der Dokumentation Ihres XSLT-Prozessors nach.

 
Ausgabe

Der Wert der abgefragten Eigenschaft.

 
Definition

XSLT-Abschnitt 12.4, Diverse zusätzliche Funktionen

 
Beispiel

Es folgt ein Stylesheet, das verschiedene Eigenschaften des XSLT-Prozessors abfragt.

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  
  <xsl:output method="text"/>

  <xsl:variable name="newline">
<xsl:text>
</xsl:text>
  </xsl:variable>

  <xsl:template match="/">
    <xsl:text>xsl:version = "</xsl:text>
    <xsl:value-of select="system-property('xsl:version')"/>
    <xsl:text>"</xsl:text><xsl:value-of select="$newline"/>
    <xsl:text>xsl:vendor = "</xsl:text>
    <xsl:value-of select="system-property('xsl:vendor')"/>
    <xsl:text>"</xsl:text><xsl:value-of select="$newline"/>
    <xsl:text>xsl:vendor-url = "</xsl:text>

    <xsl:value-of select="system-property('xsl:vendor-url')"/>
    <xsl:text>"</xsl:text><xsl:value-of select="$newline"/>
  </xsl:template>

</xsl:stylesheet>

Das Stylesheet wird über den XSLT-Prozessor Xalan anhand des folgenden Befehls auf ein XML-Dokument angewendet:

java org.apache.xalan.xslt.Process -in test1.xml -xsl systemproperties.xsl

Die Ergebnisse sind wie folgt:

xsl:version = "1"
xsl:vendor = "Apache Software Foundation"
xsl:vendor-url = "http://xml.apache.org/xalan"

Der folgende Befehl erzeugt die Ergebnisse über Michael Kays XSLT-Prozessor Saxon:

java com.icl.saxon.StyleSheet test1.xml systemproperties.xsl

Hier die Ergebnisse:

xsl:version = "1"                                                      
xsl:vendor = "SAXON 6.4.3 from Michael Kay"                     
xsl:vendor-url = "http://saxon.sourceforge.net"

Auch Oracles XML-Parser wurde getestet:

java oracle.xml.parser.v2.oraxsl test1.xml systemproperties.xsl

Hier die Ergebnisse:

xsl:version = "1"
xsl:vendor = "Oracle Corporation."
xsl:vendor-url = "http://www.oracle.com"

Hier der Befehl für James Clarks XSLT-Prozessor XT:

java com.jclark.xsl.sax.Driver test1.xml systemproperties.xsl

Hier die Ergebnisse:

xsl:version = "1"
xsl:vendor = "James Clark"
xsl:vendor-url = "http://www.jclark.com/"

Schließlich und endlich Microsofts XSLT-Prozessor:

msxsl test1.xml systemproperties.xsl

Hier die Ergebnisse:

xsl:version = "1"
xsl:vendor = "Microsoft"
xsl:vendor-url = "http://www.microsoft.com"