Aide transformation vers HTML, perte de balise
Bonjour à tous,
Je suis assez novice en la question et malgré quelques lectures sur le sujet, j'ai un peu de mal à appréhender mon problème.
Je suis sur une solution qui tourne correctement, et que je dois simplement modifier.
Aujourd'hui, dans mon XML, j'ai une balise <renvoi> qui peut se trouver à plusieurs endroits différents.
Dans ma XSL, mon <renvoi> est traité ainsi :
Code:
1 2 3
| <xsl:template match="types:renvoi">
<span class="clRenvoi"> <xsl:apply-templates/></span>
</xsl:template> |
disons que mes <renvoi> ont un style qui les affiche en souligné.
Ensuite, j'ai des <renvoi> qui se situent dans mes extraits <extrait>, et j'affiche <extrait> comme cela :
Code:
1 2 3 4 5 6
| <xsl:template match="art:extrait">
<section class="clInterieurEncadre">
<span class="clTitreMeta">Extrait :</span>
<xsl:apply-templates/>
</section>
</xsl:template> |
Jusqu'ici tout va bien, cette portion XML :
Code:
1 2 3 4 5
| <extrait>
<commun:alinea>
<types:renvoi type="CASS" refid="12-45644" annee="2012" mois="janvier" jour="5">Cass. ass. plén., 5 janvier 2012, n° 12-45644</types:renvoi>
</commun:alinea>
</extrait> |
me renvoi bien une fois transformée :
Code:
1 2
| <span class="clTitreMeta">Extrait :</span>
<p><span class="clRenvoi">Cass. ass. plén., 5 janvier 2012, n° 12-45644</span></p> |
La complexité se trouve dans cette partie du XML :
Code:
1 2 3
| <meta:sous_titre>
<types:renvoi type="CASS" refid="12-45644" annee="2012" mois="janvier" jour="5">Cass. ass. plén., 5 janvier 2012, n° 12-45644</types:renvoi>
</meta:sous_titre> |
ma transformation, à cet endroit est un peu plus complexe :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <xsl:template match="art:meta|lot:meta">
<p class="clMeta">
<span class="clTitleContentHighBlue"><xsl:value-of select="concat(@id,' ')"/></span> <span class="clTitle">(<xsl:value-of select="meta:type_article"/>)</span>
</p>
<p class="clMeta">
<span class="clTitle">Sur-titre : </span><span class="clOnTitleContentHighBlue"><xsl:value-of select="meta:sur_titre"/></span>
</p>
<p class="clMeta">
<span class="clTitle">Titre : </span><span class="clTitleContentHighBlue"><xsl:value-of select="commun:titre"/></span>
</p>
<p class="clMeta">
<span class="clTitle">Sous-titre : </span><span class="clSubTitleContentHighBlue"><xsl:value-of select="meta:sous_titre"/></span>
</p>
<xsl:apply-templates select=".//meta:auteur"/>
</xsl:template> |
à cet endroit, la transformation me donne :
Code:
1 2
| <span class="clTitle">Sous-titre : </span>
<span class="clSubTitleContentHighBlue">Cass. ass. plén., 5 janvier 2012, n° 12-45644</span> |
je perds le renvoi. je ne comprends pas le mécanisme qui fait que, partout ailleurs, lorsque j'ai un <renvoi> il s'affiche avec son style assigné au tout début, mais uniquement sans le <sous_titre> je perd cette information.
J'ajoute que j'ai essayé de modifier mon XSD afin d'autoriser de de placer mon <renvoi> dans un <commun:alinea> dans le sous_titre, mais cela ne résout pas le problème.
Merci d'avance a qui voudra se casser un peu la tête, je peux fournir des informations complémentaire au besoin.
Bonne journée
Romain