Subject: Re: question on support of stylesheet embedding
From: Manfred Staudinger <manfred.staudinger@xxxxxxxxx>
Date: Mon, 20 Jul 2009 20:15:02 +0200
|
On 15/07/2009, Hermann Stamm-Wilbrandt <STAMMW@xxxxxxxxxx> wrote:
> My interest in this was to eliminate the need for file "cdcatalog.xsl.xsl"
> by incorporating "something" as embedded stylesheet into "cdcatalog1.xml"
> and "cdcatalog2.xml" from posting "../200906/msg00070.html"
> (see http://www.stamm-wilbrandt.de/en/xsl-list/xsl-url/#listings).
>
> Since stylesheet embedding is not supported by all browsers I will not
> investigate further into that direction.
If you reverse the method and include your data in the xsl:stylesheet
(example below) it will work with all browsers. Remarks:
- tested with IE 6, Firefox 3.5, Opera 9.6.
- the PI would work also with an empty href (exept IE)
- the file embedd-test3.xsl was served with application/xml
Regards,
Manfred Staudinger
embedd-test3.xsl:
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="embedd-test3.xsl"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">.
<xsl:apply-templates select="*/xsl:variable[@name='catalog']/*"/>
</xsl:template>
<xsl:template match="catalog">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:apply-templates select="*"/>
</table>
</body>
</html>
</xsl:template>
<xsl:template match="cd">
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:template>
<xsl:variable name="catalog">
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
<cd>
<title>The white album</title>
<artist>Beatles</artist>
<country>UK</country>
<company>apple</company>
<price>???</price>
<year>196?</year>
</cd>
</catalog>
</xsl:variable>
</xsl:stylesheet>
On 15/07/2009, Hermann Stamm-Wilbrandt <STAMMW@xxxxxxxxxx> wrote:
>> I tried this in Chrome, and it does a fantastic job ! Which is amazing
>> to me because chrome does horribly on "pure xml" files ... one thing I
>> keep IE lying around
>
> It is fine that most browsers but IEs support stylesheet embedding.
>
> My interest in this was to eliminate the need for file "cdcatalog.xsl.xsl"
> by incorporating "something" as embedded stylesheet into "cdcatalog1.xml"
> and "cdcatalog2.xml" from posting "../200906/msg00070.html"
> (see http://www.stamm-wilbrandt.de/en/xsl-list/xsl-url/#listings).
>
> Since stylesheet embedding is not supported by all browsers I will not
> investigate further into that direction.
>
>
> Mit besten Gr|_en / Best wishes,
>
> Hermann Stamm-Wilbrandt
> Developer, XML Compiler
> WebSphere DataPower SOA Appliances
> ----------------------------------------------------------------------
> IBM Deutschland Research & Development GmbH
> Vorsitzender des Aufsichtsrats: Martin Jetter
> Geschdftsf|hrung: Erich Baier
> Sitz der Gesellschaft: Bvblingen
> Registergericht: Amtsgericht Stuttgart, HRB 243294
>
>
>
> "David A. Lee"
> <dlee@xxxxxxxxxxx
> > To
> xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> 07/15/2009 06:24 cc
> PM
> Subject
> Re: question on support of
> Please respond to stylesheet embedding
> xsl-list@xxxxxxxx
> lberrytech.com
>
>
>
>
>
>
>
>
> I tried this in Chrome, and it does a fantastic job ! Which is amazing
> to me because chrome does horribly on "pure xml" files ... one thing I
> keep IE lying around
>
> David A. Lee
> dlee@xxxxxxxxxxx
> http://www.calldei.com,
> http://www.xmlsh.org
> 812-482-5224
>
>
>
> Martin Honnen wrote:
>> Hermann Stamm-Wilbrandt wrote:
>>
>>> the spec says that embedding a stylesheet into a XML document is
>>> possible:
>>> http://www.w3.org/TR/xslt#section-Embedding-Stylesheets
>>>
>>> After some searching I was able to get the cdcatalog sample below
>>> working:
>>> (http://www.stamm-wilbrandt.de/en/xsl-list/cdcatalog.xml if you want to
>>> click).
>>>
>>> But it is working for Firefox 2/3 and Opera 9.64, NOT for MS IE6.
>>> I found neither negative nor positive statements on IE 6/7/8 support
>>> of stylesheet embedding while searching the web.
>>>
>>> Does anybody now the answer whether any of the Microsoft browsers
>>> supports
>>> stylesheet embedding?
>>
>> It does not look like that is supported with IE. IE 8 when I try your
>> test case http://www.stamm-wilbrandt.de/en/xsl-list/cdcatalog.xml
>> seems to sniff the content and try to interpret it as text/html
>> meaning you end up with a browser window displaying the contents of
>> the first title element in the window bar and a table with only the
>> header row as the contents of the document followed by any text nodes
>> in all those unknown (to the HTML parser) elements like artist, country.
|