DevTrain

Autor: Andreas Rauch

System informationen via XSL?

Wie sie Systeminformationen wie die Browserversion etc. abrufenkönnen,  haben sie bereits in verschiedenen Artikeln nachlesen können. Aber wäre es nicht sinnvoll zu wissen welche Version des Parser im Sytsem als Standard installiert wurde.

Zur Erinnerung:

Sie könne von der der Microsoft Site msdn.microsoft.com/xml immer die neueste Parser Version downloaden und installieren. Allerding wird die neue MSXML??.DLL nicht automatisch zum Standardparser gemacht. Dafür müssen Sie noch die Datei xmlinst.exe (die ist übrigens auf der gleichen Website downloadbar) im System32 Verzeichnis von Windows von DOS Prompt aus  ausführen. Diese installiert die neueste Version als Standard und trägt die dementsprechende  Informationen in die Registry ein.


Wie kommen wir aber nun an die Versionsnummer?


Mit der system Property Funktion!


Hier gibt es folgende Funtkionen:

System property Description

xsl:version Gibt die Versionsnummer der installierten XSLT Version des Parsers zurück.
xsl:vendor Gibt in "unseren" Fall "Microsoft" zurück.
xsl:vendor-url Die URL "http://www.microsoft.com".
msxsl:version Die Versionsnummer des Parsers.

 

Für die Ausführung ist wichtig deen richtigen namespace zu verwenden:

xmlns:xsl: "http://www.w3.org/1999/XSL/Transform" für xsl:version, xsl:vendor, und xsl:vendor-url properties.
Für das Prefix msxsl lautet der passenden Namespace "urn:schemas-microsoft-com:xslt"

Nehmen Sie ien beliebiges XML File und baun Sie einen Verweis auf folgendes XSL File ein.


system.xsl

<xsl:stylesheet xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<body>
<h3>system-property() Function</h3>
<ul>
<li>
<b>system-property("xsl:version")</b>
=
<xsl:value-of select="system-property('xsl:version')"/>
</li>
<li>
<b>system-property("xsl:vendor")</b>
=
<xsl:value-of select="system-property('xsl:vendor')"/>
</li>
<li>
<b>system-property("xsl:vendor-url")</b>
=
<xsl:value-of select="system-property('xsl:vendor-url')"/>
</li>
<li>
<b>system-property("msxsl:version")</b>
=
<xsl:value-of select="system-property('msxsl:version')"/>
</li>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

 


Das Ergebnis könnte folgendermasssen aussehen:

system-property() Function
system-property("xsl:version") = 1
system-property("xsl:vendor") = Microsoft
system-property("xsl:vendor-url") = http://www.microsoft.com
system-property("msxsl:version") = 3

 


Erfasst am: 08.06.2001 - Artikel-URL: http://www.devtrain.de/news.aspx?artnr=464
© Copyright 2003 ppedv AG - http://www.ppedv.de