|
Subject: [xsl] Transform some attributes into HTML span elements with delimiters (specific format) From: Philipp Kursawe <phil.kursawe@xxxxxxxxx> Date: Thu, 27 May 2010 09:28:58 +0200 |
Hello,
I have this XML
<InspectionReportInput
city="Some"
firstName="Jon"
lastName="Doe
...
>
</InspectionReportInput>
and would like to get this (partial) HTML output:
<span id="firstName">Jon</span> <span id="lastName">Doe</span>, <span
id="city">Some</span>
So I want to put a space delimited between firstName and lastName and
after lastName a ",".
Currently my XSLT looks like this:
<xsl:call-template name="span"><xsl:with-param name="id"
select="//@firstName"></xsl:with-param></xsl:call-template>
<xsl:call-template name="span"><xsl:with-param name="id"
select="//@lastName"></xsl:with-param></xsl:call-template>,
<xsl:call-template name="span"><xsl:with-param name="id"
select="//@city"></xsl:with-param></xsl:call-template>
<xsl:template name="span" match="attribute::node()">
<xsl:param name="id"></xsl:param>
<xsl:element name="span"><xsl:attribute name="id"><xsl:value-of
select="name($id)"/></xsl:attribute><xsl:value-of
select="$id"/></xsl:element>
</xsl:template>
As you can see its very verbose. I would like to have it a little less
verbose if possible. Something like this:
spans for the following "//@firstname //@lastName, //@city"
So I already give the charachters that should be emitted after the
template "span" is called.
Thanks!
Phil
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] question on paths, Monosij Dutta-Roy | Thread | Re: [xsl] Transform some attributes, Philipp Kursawe |
| Re: [xsl] question on paths, Monosij Dutta-Roy | Date | Re: [xsl] Transform some attributes, Philipp Kursawe |
| Month |