From: Marc CHANTREUX (khatar@phear.org)
Date: 13/09/2001 - 13:53
Salut a tous,
J'aimerais transformer un doc xhtml en doc html comme suit :
<h1>C1</h1>
<p>p1</p>
<p>p2</p>
<p>p3</p>
<h1>C2</h1>
<p>p4</p>
<p>p5</p>
<p>p6</p>
devient :
<table>
<tr>
<td>C1</td>
<p>p1</p>
<p>p2</p>
<p>p3</p>
<td>
</td>
<td>C2</td>
<td>
<p>p4</p>
<p>p5</p>
<p>p6</p>
</td>
</tr>
</table>
Dans ma feuille de style, j'avais écris la chose suivante :
<xsl:template match="xhtml:h1">
<table width="100%" cellspacing="0">
<tr bgcolor="black">
<td width="83"> </td>
<td><font color="white"><xsl:value-of
select="."/></font></td>
</tr>
<tr>
<td width="83"> </td>
<td>
<xsl:param name="in_sect" select="true()" />
<xsl:for-each select="following-sibling::*" >
<xsl:param name="is_h1" select="name() = 'h1'"
/>
<xsl:if test="name() = 'h1'" >
<xsl:param name="in_sect"
select="false()" />
</xsl:if>
<xsl:if test="$in_sect" >
<xsl:apply-templates select="." />
</xsl:if>
</xsl:for-each>
</td>
</tr>
</table>
</xsl:template>
Ca ne peut pas fonctionner car "une variable est constante" (dixit vdl).
Dans les archives de la liste, il est noté qu'on peut contourner le pb
en appellant un template de facon recursive. comme j'appelle
following-sibling dans ce template, le traitement va vite devenir
monstreux. Est ce que qq1 verrait une autre ecriture possible pour mon
pb ?
(il me semble avoir deja lu une problematique similaire sur cette liste
mais je n'ai pas ete foutu de retrouver la chose dans l'archive)
Marc
-------------------------------------------------------------
"Advancing technology is not as important as fighting for
freedom, but it's still a good thing to do."
Richard M. Stallman
khatar@phear.org
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|