xsl-list
[Top] [All Lists]

RE: generic xsl to transfrom xml to html

2003-01-30 00:26:46
Hi,

I'm new to xslt and trying to use it to transform xml files 
to html tables.

Here is the xml files format:
  <Root>
     <a1>value-of-a1</a1>
     <a2>value-of-a2</a2>
     <a3>
         <a3i>value-ofa3i</a3i>
         <a3ii>
               <a3iia>value-ofa3iia<a3iia>
               <a3iib>value-ofa3iib<a3iib>
     </a3>
     <a4>value-ofa4</a4>
   ..
  <Root>

The result I'm expected is like this:
  a1                    value-of-a1
  a2                    value-of-a2
  a3 - a3i              value-of-a3i
  a3 - a3ii - a3iia     value-of-a3iia
  a3 - a3ii - a3iib     value-of-a3iib
  a4                    value-of-a4

Is it possible to have one generic xsl that will do the 
transformation for 
all xml files with the same format?

E.g.

<xsl:template match="Root">
  <html>
    <head>
      <title />
    </head>
    <body>
      <table>
        <tbody>
          <xsl:apply-templates select="*" />
        </tbody>
      </table>
    </body>
  </html>
</xsl:template>

<xsl:template match="*[not(*)]">
  <tr>
    <td>
      <xsl:for-each select="ancestor::*[not(self::Root)] | .">
        <xsl:if test="not(position() = 1)"> - </xsl:if>
        <xsl:value-of select="name()" />
      </xsl:for-each>
    </td>
    <td>
      <xsl:value-of select="." />
    </td>
  </tr>
</xsl:template>

Cheers,

Jarno - Solitary Experiments: Depressive Frustration

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>