system-property() 関数  
関数のパラメータによって名前が付けられるシステムプロパティの値を返します。
 
説明

定義により、すべての XSLT プロセッサは次の 3 つのシステムプロパティをサポートする必要があります。

xsl:version
この XSLT プロセッサによって実装された XSLT のバージョンを表す浮動小数点数。現時点では、XSLT プロセッサによってサポートされている XSLT の唯一の正式なバージョンは 1.0 です。

xsl:vendor
この XSLT プロセッサのベンダーを識別する文字列。

xsl:vendor-url
XSLT プロセッサのベンダーを識別する URL を含む文字列。この文字列は、通常はベンダーの Web サイトのホームページになります。

 
入力

XSLT 1.0 仕様では、xsl:versionxsl:vendor、および xsl:vendor-url の 3 つのプロパティが定義されています。これらのプロパティは、すべての XSLT プロセッサがサポートする必要があります。その他のプロパティは個別のプロセッサでサポートされている場合があります。詳細については、プロセッサのマニュアルを参照してください。

 
出力

クエリーしたプロパティの値。

 
定義先

XSLT 12.4 節「Miscellaneous Additional Functions」

 

XSLT プロセッサの異なるプロパティをクエリーするスタイルシートを次に示します。

<?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>

Xalan XSLT プロセッサを使用して任意の XML ドキュメントに対してスタイルシートを適用した場合 (次のコマンドによって呼び出し) の例を次に示します。

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

結果は次のとおりです。

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

次のコマンドは、Michael Kay 氏の Saxon プロセッサによる結果を呼び出します。

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

結果は次のとおりです。

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

Oracle の XML パーサーを次のように呼び出しました。

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

結果は次のとおりです。

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

James Clark 氏の XT プロセッサを次のように呼び出しました。

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

結果は次のとおりです。

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

最後に、Microsoft の XSLT プロセッサを次のように呼び出しました。

msxsl test1.xml systemproperties.xsl

結果は次のとおりです。

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