Re: [xsl] Copying all comments [xsltproc 1.0]

Subject: Re: [xsl] Copying all comments [xsltproc 1.0]
From: pankaj.c@xxxxxxxxxxxxxxxxxx
Date: Tue, 5 Oct 2010 12:15:01 +0530
Hello again,

And what about displaying the value of @id of <query id="Q1"> before it.

<xsl:value-of select="substring(., 
13,substring-before(.,'&#x0022;'))"/><xsl:text>.&#x0009;</xsl:text>
is incorrect
<xsl:value-of select="substring(., 
13,substring-before(.,'"'))"/><xsl:text>.&#x0009;</xsl:text>

and 
<xsl:value-of select="substring(., 13,1))"/><xsl:text>.&#x0009;</xsl:text> 
will not help as the no (Q1) can exceed to two digit (10-99) to three 
digit.

I think it's useless to use right double quote unicode value here. 

Output required:

1. <query id="Q1">
2. <query id="Q2">

and so on.

<xsl:number/> too seems to be no help in conjuction <xsl:for-each> here.





On 04/10/2010 12:35, pankaj.c@xxxxxxxxxxxxxxxxxx wrote:

The subject line is misleading as you don't want to copy the commennts 
that would be:

<xsl:copy-of select="//comment()"/>

You want to generate elements from xml markup in comments.

If you are sure the commented code is well formed, and you are in a 
situation that you can use d-o-e then you can use

<xsl:for-each select="//comment()">
<xsl;value-of disable-output-escaping="yes" select="."/>
</xsl:for-each>

if the comments may not be well formed or you can't use d-o-e then you 
need to parse the string and generate elements. Most systems have 
extension functions to do that. (You could use htmlparse.xsl to do it in 
xslt but that's xslt2)

David






________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________

Current Thread