[xsl] Converting SSI variables to XML

Subject: [xsl] Converting SSI variables to XML
From: "tom tom" <tomxsllist@xxxxxxxxxxx>
Date: Mon, 11 Sep 2006 16:29:29 +0100
Hi all, I wish to turn the following CDATA input:

<xml>

<![CDATA[

<!--#set var="t.news.1.title" value="This is the title"-->
<!--#set var="t.news.1.image_small" value="smallimage"-->
<!--#set var="t.news.1.image_large" value="largeimage"-->

<!--#set var="t.news.2.title" value=""-->
<!--#set var="t.news.2.image_small" value=""-->
<!--#set var="t.news.2.image_large" value=""-->

<!--#set var="t.news.3.title" value=""-->
<!--#set var="t.news.3.image_small" value=""-->
<!--#set var="t.news.3.image_large" value=""-->


]]> </xml>


Into XML as follows using XSLT 2:


<ts>
 <group num="1">
  <var name="t.news.1.title" value="This is the title"/>
  <var name="t.news.1.image_small" value="smallimage"/>
  <var name="t.news.1.image_large" value="largeimage"/>
 </group>
 <group num="2">
  etc.....
 </group>
</ts>

I have used the analyze-string function to do a regex match on the HTML comments, it then extracts the values of 'var' and 'value' to create:

<ts>

  <var name="t.news.1.title" value="This is the title"/>
  <var name="t.news.1.image_small" value="smallimage"/>
  <var name="t.news.1.image_large" value="largeimage"/>


etc.....


</ts>

To add the grouping I will need to do another pass over this data however I am finding it complex to extract the numerical data from the string at @name and it seems unnecessary complex. I have also tried nesting xsl:analyze-string elements to create a group first then the individual variables. Can anyone recommend the correct way to do this?

Thanks in advance

Tom

_________________________________________________________________
Download the new Windows Live Toolbar, including Desktop search! http://toolbar.live.com/?mkt=en-gb


Current Thread