Thanks,

Yes I'm using org.apache.xalan.xsltc.trax.TransformerFactoryImpl

it's ignoring the attribute setting. the font never get set to
red. If I remove the apply templates line it does work and
of course the warning goes away.

the font template is used to set other font attributes.
the color attrib needs to be after it in order to over ride
the default set by the font template.

-----Original Message-----
From: Voytenko, Dimitry [mailto:[EMAIL PROTECTED]
Sent: Wednesday, March 19, 2003 12:03 PM
To: 'Tim Cronin'; [EMAIL PROTECTED]
Subject: RE: xsl behavior


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:[EMAIL PROTECTED]
Sent: Wednesday, March 19, 2003 09:40
To: [EMAIL PROTECTED]
Subject: RE: xsl behavior


2.5D1

-----Original Message-----
From: Joseph Kesselman [mailto:[EMAIL 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:[EMAIL PROTECTED]
Sent: Wednesday, March 19, 2003 11:45 AM
To: 'Tim Cronin'; [EMAIL PROTECTED]
Subject: RE: xsl behaviour


Hi Tim,

What's the version of Xalan you're using?

Thanks,
Dimitry

-----Original Message-----
From: Tim Cronin [mailto:[EMAIL PROTECTED]
Sent: Wednesday, March 19, 2003 08:29
To: [EMAIL 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/[EMAIL PROTECTED]'Data
Properties']/[EMAIL PROTECTED]'Font']/Font"/>
    <xsl:attribute name="color"><xsl:if
test="[EMAIL PROTECTED]'QuantityShort']&lt;0">Red</xsl:if></xsl:attribute>
    <xsl:value-of select="[EMAIL PROTECTED]'QuantityOnOrder']"/>
  </FONT>
  </xsl:template>
  <xsl:template match="Font">
    <xsl:attribute name="face"><xsl:value-of
select="@Family"/></xsl:attribute>
    <xsl:attribute name="color"><xsl:value-of
select="@Color"/></xsl:attribute>
    <xsl:attribute name="style">font-size:<xsl:value-of select="@Size"/>;
font-style:<xsl:value-of select="@Style"/>;font-weight:<xsl:value-of
select="@Weight"/>;</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="[EMAIL PROTECTED]'QuantityShort']&lt;0">Red</xsl:if></xsl:attribute>

the problem is within the font section
  <FONT>
    <xsl:apply-templates select="/Properties/[EMAIL PROTECTED]'Data
Properties']/[EMAIL PROTECTED]'Font']/Font"/>
    <xsl:attribute name="color"><xsl:if
test="[EMAIL PROTECTED]'QuantityShort']&lt;0">Red</xsl:if></xsl:attribute>
    <xsl:value-of select="[EMAIL 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.

Reply via email to