Bonjour,
je suis novice en XSL et j'aimerais savoir si il est possible de choisir le template qu'on voudrait appliquer.
Je m'explique par un exemple.
J'ai les fichiers xml suivant:
et:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <?xml version="1.0"?> <ihg version="3.0.0.0"> <session_data> <issuer> <fiscal_year_start_date>2006-01-12</fiscal_year_start_date> </issuer> </session_data> <derivatives> <cb_option> <maturity_date>2008-01-01</maturity_date> <convertible_bond> <bond_terms> <issue_date>2000-01-01</issue_date> </bond_terms> </convertible_bond> </cb_option> </derivatives> </ihg>
comme on s'en apperçoit "convertible_bond" est dans le premier cas un sous fils de "cb_option" et ne l'est pas dans l'autre cas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <?xml version="1.0"?> <ihg version="3.0.0.0"> <session_data> <issuer> <fiscal_year_start_date>2006-01-12</fiscal_year_start_date> </issuer> </session_data> <derivatives> <convertible_bond> <bond_terms> <issue_date>2000-01-01</issue_date> </bond_terms> </convertible_bond> </derivatives> </ihg>
Ce que j'aimerais faire c'est faire un test de ce type:
Est ce possible et comment svp?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <xsl:choose> <xsl:when test="name(ihg/derivatives/*[1])"='cb_option'> <xsl:template match="ihg/derivatives/*[1]/convertible_bond"> </xsl:when> <xsl:otherwise> <xsl:template match="ihg/derivatives/*[1]/convertible_bond"> </xsl:otherwise> </xsl:choose>
si ce n'est pas possible, comment puis-je faire?
merci d'avance de votre aide.
Partager