This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Setting attributes of FO element
- From: Joerg Heinicke <joerg dot heinicke at gmx dot de>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Wed, 17 Apr 2002 16:14:07 +0200
- Subject: Re: [xsl] Setting attributes of FO element
- References: <00b301c1e616$5de8ee60$0901a8c0@bawku>
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hello Emma,
your code is not so wrong, you only set the elements attribute and
value-of in the wrong namespace. Otherwise - if the matched element has
@colspan or not - your code with little changes should work:
> <fo:table-cell>
> <xsl:if test='@colspan'>
> <xsl:attribute name="number-columns-spanned">
> <xsl:value-of select="@colspan" />
> </xsl:attribute>
> </xsl:if>
> </fo:table-cell>
The 'xsl'-namespace-prefix says, that the XSL-Transformer should handle
this node. Otherwise it is a node, that will only be copied to the
output, so with your code you should have this
<fo:table-cell>
<fo:attribute name="number-columns-spanned">
<fo:value-of select="@colspan" />
</fo:attribute>
</fo:table-cell>
in your output, isn't it?
Regards,
Joerg
Emma Larsson wrote:
> Hi all..
>
> How do I set the attribute to a FO element after the element has been declared?
>
> I want to do something like this:
>
> <fo:table-cell>
> <xsl:if test='@colspan'>
> <fo:attribute name="number-columns-spanned">
> <fo:value-of select="@colspan" />
> </fo:attribute>
> </xsl:if>
> </fo:table-cell>
>
> That is, I want to set the attribute number-columns-spanned for the element table-cell.
> But the attribute is not always set in the XML file, so I can't count on the value being
> set..
>
> The 'solution' above is not supported, at least not as far as I can see. Is there any other
> way to solve the problem? Any help is appreciated...
>
> /Emma
--
System Development
VIRBUS AG
Fon +49(0)341-979-7419
Fax +49(0)341-979-7409
joerg.heinicke@virbus.de
www.virbus.de
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list