-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
Aleš Peregrin
Sent: 14 October 2003 12:12
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] need help with converting attribute into elements
Hi,
thanx for your time. Your solution is now clear for me.
Now I know I was right: there is no easy way. I gues there
are some things XSLT can't do. So thanx again.
Ales Peregrin
----- Original Message -----
From: "Rod Humphris - FLPTN"
<rod(_dot_)humphris(_at_)focusdiy(_dot_)co(_dot_)uk>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Tuesday, October 14, 2003 12:19 PM
X-Scanned: By Symantec Anti-Virus Scan Engine
Subject: Re: [xsl] need help with converting attribute into elements
Code nested choose/when/otherwise blocks to cover all the
combinations
that
you want to catch. It isn't pretty but it will work.
Copy/paste will
get
you
there fast enough!
<xsl:template match="text">
<p>
<xsl:choose>
<xsl:when test="@bold='true'">
<b>
<xsl:choose>
<xsl:when test="@italic='true'">
<i>
<xsl:choose>
<xsl:when test="@underline='true'">
<u>
<xsl:value-of select="."/>
</u>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</i>
</xsl:when>
<xsl:otherwise>
etc, etc....
</b>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</p>
</xsl:template>
There you are I've basically done it for you, just fill in
the missing
bits.
I can't myself think of a better way. I think perhaps that
sometimes
xslt just is verbose and this may be one of them.
The best I can suggest is that you could write the code
inside a named
template (look it up if you don't know) which takes an element as a
parameter and then at least you won't have to write it
again and you
can
use
it on other elements besides a 'text' one. You could then
xsl:include/import
it from a library xslt to make it more reusable again.
Ah just saw Jarno's. Much better. Take your pick.
Cheers
Rod
-----Original Message-----
From: Aleš Peregrin [mailto:ales(_dot_)peregrin(_at_)unicorn(_dot_)cz]
Sent: 14 October 2003 10:49
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
X-Scanned: By Symantec Anti-Virus Scan Engine
Subject: RE: [xsl] need help with converting attribute into elements
Hi Rod,
thanx for your solution suggestion.
I'm not sure, wheter I understand it right. Does it mean to
write it
eight times, once for each combinatoion of the atribute
values, e.g.
first for "all true", than <otherwise> one of them false
and so on? Or
is there some easier way? Could you please write some more detailed
example?
thanx
Ales Peregrin
----- Original Message -----
From: "Rod Humphris - FLPTN"
<rod(_dot_)humphris(_at_)focusdiy(_dot_)co(_dot_)uk>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Tuesday, October 14, 2003 11:05 AM
X-Scanned: By Symantec Anti-Virus Scan Engine
X-Scanned: By Symantec Anti-Virus Scan Engine
Subject: RE: [xsl] need help with converting attribute into elements
Hi Ales
I expect someone could suggest a prettier and more
modular approach
but nested choose blocks would do it:
<xsl:template match="text">
<p>
<xsl:choose>
<xsl:when test="@bold='true'">
<b>
<xsl:choose>
<xsl:when test="@italic='true'">
<i>
etc, etc.....
</b>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</p>
</xsl:template>
Cheers
Rod
-----Original Message-----
From: Aleš Peregrin [mailto:ales(_dot_)peregrin(_at_)unicorn(_dot_)cz]
Sent: 14 October 2003 09:47
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
X-Scanned: By Symantec Anti-Virus Scan Engine
Subject: RE: [xsl] need help with converting attribute
into elements
Hi!
I'm trying to make a XSLT stylexheet for transforming XML
document
into
HTML
and there is a problem I'm unable to solve, even after a week of
trying
and
searching all over the internet. The problem looks quite
easy to me
and
it
seems I'm missing something important about XSL
language. Here it
goes:
I have an XML tag which looks like this: <text bold=true
italic=true
underline=false>Help!</text> In this case, the result in
HTML should
be: <font>
<b>
<i>
Help!
</i>
</b>
</font>
I simply need to transform the attributes into HTML
elements so that
any
of
the possible combinations of the atributes' values would be
transformed correctly.
Can anyone help me?
Thanx.
Ales Peregrin
XSL-List info and archive:
http://www.mulberrytech.com/xsl/xsl-list
____________________________________________________________________
____
This email has been scanned for all viruses by the
MessageLabs Email
Security System. For more information on a proactive
email security
service working around the clock, around the globe, visit
http://www.messagelabs.com
______________________________________________________________
__________
________________________________________________________________
Any opinions expressed in this email are those of the
individual and
not
necessarily the Company. Unless expressly stated to the
contrary, this
email
is not intended to give rise to a new, or affect an existing,
contractual
or
other legal relationship.This email and any files
transmitted with it,
including replies and forwarded copies which may contain
alterations)
subsequently transmitted from the Company, are confidential
and solely
for the use of the intended recipient. The unauthorised use,
disclosure or copying of this email, or any other information
contained or attached,is prohibited and could, in certain
circumstances, be a criminal offence.
If you have received this email in error please notify
the sender as
soon
as possible.
This footnote also confirms that this email message has
been swept
for
the
presence of computer viruses.
www.focusdiy.co.uk
_________________________________________________________________
____________________________________________________________________
____
This email has been scanned for all viruses by the
MessageLabs Email
Security System. For more information on a proactive
email security
service working around the clock, around the globe, visit
http://www.messagelabs.com
______________________________________________________________
__________
XSL-List info and archive:
http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive:
http://www.mulberrytech.com/xsl/xsl-list
______________________________________________________________________
__
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com
______________________________________________________________
__________
______________________________________________________________________
__
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com
______________________________________________________________
__________
XSL-List info and archive:
http://www.mulberrytech.com/xsl/xsl-list
XSL-List info
and archive: http://www.mulberrytech.com/xsl/xsl-list