xsl-list
[Top] [All Lists]

[xsl] Problem with Safari?

2008-04-28 10:52:37
Hi List,

The stylesheet below (a test is available at
http://test.rudolphina.org/avail-test.xml ) works fine with SAXON
6.5.5, Transformiix (Firefox 2.0.0.14), Opera 9.27 and MSXML3 (IE 6).
But in Safari 2.0.4 it seems not to work. Jugging from a screen-shot
only, element-available(.) returns an empty string, maybe other issues
too.

Can somebody please confirm the problem?

Regards, Manfred

XML:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="avail-test.xsl" type="text/xsl"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns:dr="http://documenta.rudolphina.org/";
        xmlns="http://www.w3.org/1999/xhtml";>
        <head>
                <title>XSLT Availability</title>
        </head>
        <body>
                <h1>XSLT 1.0</h1>
                <dr:available>
                        <dr:xslt>
                                <dr:elements show="false">
                                        <dr:e>xsl:number</dr:e>
                                </dr:elements>
                                <dr:functions show="false">
                                        <dr:f>document</dr:f>
                                </dr:functions>
                        </dr:xslt>
                        <dr:xpath>
                                <dr:functions show="false">
                                        <dr:f>last</dr:f>
                                </dr:functions>
                        </dr:xpath>
                        <dr:extension>
                                <dr:elements show="true">
                                        <dr:e>msxsl:script</dr:e>
                                        <dr:e>exsl:document</dr:e>
                                </dr:elements>
                                <dr:functions show="true">
                                        <dr:f>msxsl:node-set</dr:f>
                                        <dr:f>exsl:node-set</dr:f>
                                </dr:functions>
                        </dr:extension>
                </dr:available>
        </body>
</html>

XSLT:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0"
        xmlns="http://www.w3.org/1999/xhtml";
        xmlns:xhtml="http://www.w3.org/1999/xhtml";
        xmlns:dr="http://documenta.rudolphina.org/";
        xmlns:exsl="http://exslt.org/exsl";
        xmlns:msxsl="urn:schemas-microsoft-com:xslt"
        extension-element-prefixes="exsl msxsl"
        exclude-result-prefixes="xhtml dr exsl msxsl"
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

<xsl:output method="xml"
        doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
        doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";
        encoding="UTF-8" omit-xml-declaration="yes" indent="yes"/>

<xsl:template match="/">
        <xsl:apply-templates/>
</xsl:template>

<xsl:template match="*">
        <xsl:copy>
                <xsl:apply-templates select="@*|node()"/>
        </xsl:copy>
</xsl:template>
<xsl:template match="@*|text()|comment()|xhtml:br">
        <xsl:copy/>
</xsl:template>
<xsl:template match="dr:available">
        <ul xmlns="http://www.w3.org/1999/xhtml";>
                <xsl:apply-templates select="@*|node()"/>
        </ul>
</xsl:template>
<xsl:template match="dr:xslt|dr:xpath|dr:extension">
        <xsl:apply-templates select="@*|node()"/>
</xsl:template>

<xsl:template match="dr:functions|dr:elements">
        <li xmlns="http://www.w3.org/1999/xhtml";>
                <xsl:value-of select="concat(local-name(ancestor::*[1]), ' ',
local-name(.), ' available')"/>
                <ul xmlns="http://www.w3.org/1999/xhtml";>
                        <xsl:apply-templates select="node()">
                                <xsl:sort select="."/>
                        </xsl:apply-templates>
                </ul>
        </li>
</xsl:template>
<xsl:template match="dr:f">
                <li xmlns="http://www.w3.org/1999/xhtml";>
                        <xsl:value-of select="concat(., ': ', 
function-available(.))"/>
                </li>
</xsl:template>
<xsl:template match="dr:e">
                <li xmlns="http://www.w3.org/1999/xhtml";>
                        <xsl:value-of select="concat(., ': ', 
element-available(.))"/>
                </li>
</xsl:template>

</xsl:stylesheet>

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>