Bonjour à tous, je travaille sur une xslt que je dois modifier au minimum.

je pars d'un xml, marcxml préexistant

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  <datafield tag="210" ind1=" " ind2=" ">
    <subfield code="a">Paris</subfield>
    <subfield code="c">La Documentation française</subfield>
    <subfield code="d">1962-</subfield>
  </datafield>
  <datafield tag="210" ind1="0" ind2=" ">
    <subfield code="a">Paris</subfield>
    <subfield code="c">La Documentation française</subfield>
    <subfield code="d">1962-2004</subfield>
  </datafield>
  <datafield tag="210" ind1="1" ind2=" ">
    <subfield code="a">Louvain-la-Neuve</subfield>
    <subfield code="c">De Boeck Université</subfield>
    <subfield code="d">2005-</subfield>
j'ai pour objectif d'afficher le datafied tag='210' le plus récent dans un ordre précis, je m’appuie sur l'indicateur @ind1 qui est correlé à la date (voir ci-dessus)
exemple :

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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 <xsl:for-each select="marc:datafield[@tag=210][@ind1=1]">
 <xsl:if test="marc:subfield[@code='a'] or marc:subfield[@code='c'] or marc:subfield[@code='d']">
 <dd>
 <xsl:for-each select="marc:subfield[@code='a']">
 <xsl:value-of select="." />
 <xsl:if test="position() &lt; last()"><xsl:text>, </xsl:text></xsl:if>
 <xsl:if test="position()=last()">
 <xsl:if test="../marc:subfield[@code='c'] or ../marc:subfield[@code='d']">
 <xsl:text> : </xsl:text>
 </xsl:if>
 </xsl:if>
 </xsl:for-each>
 <xsl:for-each select="marc:subfield[@code='c']">
 <xsl:value-of select="." />
 <xsl:if test="position() &lt; last()"><xsl:text>, </xsl:text></xsl:if>
 <xsl:if test="position()=last()">
 <xsl:if test="../marc:subfield[@code='d']">
 <xsl:text> : </xsl:text>
 </xsl:if>
 </xsl:if>
 </xsl:for-each>
 <xsl:for-each select="marc:subfield[@code='d']">
 <xsl:value-of select="." />
 <xsl:if test="position() &lt; last()"><xsl:text>, </xsl:text></xsl:if>
 </xsl:for-each>
 </dd>
 <div style="clear:both"></div>
 </xsl:if>
 </xsl:for-each>
 </xsl:otherwise>
 </xsl:choose>
 </dl>
 </xsl:if>
je n'arrive pas à mettre une condition de telle sorte que je sélectionne marc:datafield[@tag=210][@ind1=] soit le plus grand possible, ou si @ind seul et afficher mais je bloque sur cette conditionnelle.

Merci d'avance