XSL Challenge
Robert C. Lyons
boblyons at unidex.com
Mon Jun 7 22:51:48 BST 1999
Roger wrote:
"...Any way to do it with the Dec. 16 WD?"
Roger,
I thought of a kludgey way to do it with the Dec. 16 WD.
You can create a stylesheet that generates a 2nd stylesheet,
such that the 2nd stylesheet transforms your
DynamicTable document into the desired HTML table.
You would then invoke XT twice as follows:
xt.exe table.xml first.xsl second.xsl
xt.exe table.xml second.xsl table.htm
The following XSL stylesheet converts your DynamicTable
document into a stylesheet that transforms your
XML doc into the desired HTML table:
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"
xmlns:qxsl="quote:http://www.w3.org/TR/WD-xsl"
indent-result="yes">
<xsl:template match="/DynamicTable">
<qxsl:stylesheet result-ns="qxsl">
<qxsl:template match="/DynamicTable">
<HTML>
<HEAD>
<TITLE>Dynamic Table</TITLE>
</HEAD>
<BODY>
<TABLE BORDER="1" WIDTH="50%">
<TR>
<xsl:for-each select="Columns/Column">
<TH><xsl:value-of select="@name"/></TH>
</xsl:for-each>
</TR>
<qxsl:for-each select="Rows/Row">
<TR>
<xsl:for-each select="Columns/Column">
<qxsl:for-each>
<xsl:attribute name="select">
Column[@name="<xsl:value-of select="@name"/>"]
</xsl:attribute>
<TD>
<qxsl:value-of select="."/>
</TD>
</qxsl:for-each>
</xsl:for-each>
</TR>
</qxsl:for-each>
</TABLE>
</BODY>
</HTML>
</qxsl:template>
</qxsl:stylesheet>
</xsl:template>
</xsl:stylesheet>
Hope this helps.
Bob
------
Bob Lyons
EC Consultant
Unidex Inc.
1-732-975-9877
boblyons at unidex.com
http://www.unidex.com/
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list