xsl behavior 2003-03-19 - By Voytenko, Dimitry
Hi,
Is that XSLTC then? Interpretive Xalan works fine. XSLTC does output warning saying: Compiler warning(s): file:///...../test/att.xsl: line 8: Attribute 'color' outside of element.
The stylesheet is fine by XSLT specs, but potentially there can be a problem. May be that's what this message is intended to say. I don't see any way how the _compiler_ can actually diagnose this kind of problem with xsl:apply-templates inside. Such an error can be only cought in run-time in this case.
Thanks, Dimitry
-----Original Message----- From: Tim Cronin [mailto:tim@(protected)] Sent: Wednesday, March 19, 2003 09:40 To: xalan-j-users@(protected) Subject: RE: xsl behavior
2.5D1
-----Original Message----- From: Joseph Kesselman [mailto:keshlam@(protected)] Sent: Wednesday, March 19, 2003 11:36 AM To: Tim Cronin Subject: Re: xsl behavior
><xsl:attribute> must generate its output as the child of an element >(either literal result element or <xsl:element> and must precede any >non-attribute children.
it is the child of an element, the font template just generates attributes.
>Try generating the attribute _before_ calling <xsl:apply-templates>.
with the attrib before, the template always overrides it.
the attrib was below the template in order to override what the template set depending on the xsl:if.
-----Original Message----- From: Voytenko, Dimitry [mailto:dvoytenko@(protected)] Sent: Wednesday, March 19, 2003 11:45 AM To: 'Tim Cronin'; xalan-j-users@(protected) Subject: RE: xsl behaviour
Hi Tim,
What's the version of Xalan you're using?
Thanks, Dimitry
-----Original Message----- From: Tim Cronin [mailto:tim@(protected)] Sent: Wednesday, March 19, 2003 08:29 To: xalan-j-users@(protected) Subject: xsl behaviour
given the following Stylesheet
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <FONT> <xsl:apply-templates select="/Properties/Group[@(protected)='Data Properties']/Datum[@(protected)='Font']/Font"/> <xsl:attribute name="color"><xsl:if test="Datum[@(protected)='QuantityShort']<0">Red</xsl:if></xsl:attribute> <xsl:value-of select="Datum[@(protected)='QuantityOnOrder']"/> </FONT> </xsl:template> <xsl:template match="Font"> <xsl:attribute name="face"><xsl:value-of select="@(protected)"/></xsl:attribute> <xsl:attribute name="color"><xsl:value-of select="@(protected)"/></xsl:attribute> <xsl:attribute name="style">font-size:<xsl:value-of select="@(protected)"/>; font-style:<xsl:value-of select="@(protected)"/>;font-weight:<xsl:value-of select="@(protected)"/>;</xsl:attribute> </xsl:template> </xsl:stylesheet>
I get a transformation warning saying that "Attribute color is outside of element" refering to this line: <xsl:attribute name="color"><xsl:if test="Datum[@(protected)='QuantityShort']<0">Red</xsl:if></xsl:attribute>
the problem is within the font section <FONT> <xsl:apply-templates select="/Properties/Group[@(protected)='Data Properties']/Datum[@(protected)='Font']/Font"/> <xsl:attribute name="color"><xsl:if test="Datum[@(protected)='QuantityShort']<0">Red</xsl:if></xsl:attribute> <xsl:value-of select="Datum[@(protected)='QuantityOnOrder']"/> </FONT>
under MS this worked OK... should I be able to do this?
_____________________________________________________ Revere Data, LLC, formerly known as Sector Data, LLC, is not affiliated with Sector, Inc., or SIAC.
_____________________________________________________ Revere Data, LLC, formerly known as Sector Data, LLC, is not affiliated with Sector, Inc., or SIAC.
|
|