Subject: Re: Is it possible to rewrite part of an attribute value with XSL?
From: Hermann Stamm-Wilbrandt <STAMMW@xxxxxxxxxx>
Date: Fri, 3 Jul 2009 19:09:33 +0200
|
> ...
> > Is that possible with XSL?
>
> With XSLT 2.0 you could do
> <xsl:attribute name="style" select="replace(@style,
> 'fill:none;stroke:black;', '')"/>
And with XSLT 1.0 processor supporting
xmlns:regexp="http://exslt.org/regular-expressions"
you can do:
<xsl:attribute name="style" select="regexp:replace(@style,
'fill:none;stroke:black;', 'g', '')"/>
This is similar to "../200903/msg00447.html".
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
Martin Honnen
<Martin.Honnen@gm
x.de> To
xsl-list@xxxxxxxxxxxxxxxxxxxxxx
07/03/2009 06:33 cc
PM
Subject
Re: Is it possible to rewrite
Please respond to part of an attribute value with
xsl-list@xxxxxxxx XSL?
lberrytech.com
Jonas Voss wrote:
> Some elements in the svg has a style attribute, which looks like this:
>
> <path style="fill:none;stroke:black;stroke-width:1.55"/>
>
> I am looking for a way to remove the "fill:none;stroke:black" of the
above,
> but to keep the "stroke-width:155" part of the attribute.
>
> So far, all I've been able to do was to overwrite the style attribute of
the
> element altogether with the following XSL:
>
> <xsl:template match="svg:path">
> <xsl:element name="path">
> <xsl:apply-templates select="@*"/>
> <xsl:attribute name="style"></xsl:attribute>
> </xsl:element>
> </xsl:template>
>
> This obviously leaves the style attribute empty (style=""), but I would
like
> to maintain the "stroke-width:1.55" value, and strike the rest of the
style
> attribute.
>
> Is that possible with XSL?
With XSLT 2.0 you could do
<xsl:attribute name="style" select="replace(@style,
'fill:none;stroke:black;', '')"/>
--
Martin Honnen
http://msmvps.com/blogs/martin_honnen/
|