Subversion Repositories eFlore/Archives.eflore-consultation-v1

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 jpm 1
<?xml version="1.0" encoding="iso-8859-1"?>
2
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
3
<xsl:output method="html" encoding="iso-8859-1" version="1.0" standalone="yes" indent="yes" />
4
 
5
<!-- DECLARATION DE VARIABLES-->
6
<!-- Variable "nom_url" récupérant le numéro nomenclatural du nom recherché.-->
7
<!-- Ce numéro est présent dans l'url appelant le service XML "donneidentitestaxons".-->
8
<xsl:variable name="nom_url" select="/FICHE_IDENTITES_TAXONS/@numnom" />
9
 
10
<!-- Variable "taxo_url" récupérant le numéro taxonomique du nom recherché,-->
11
<!-- donc présent dans l'url appelant le service XML "donneidentitestaxons".-->
12
<!-- Utilisé pour récupérer le nom vernaculaire séléctionné.-->
13
<xsl:variable name="taxo_url" select="/FICHE_IDENTITES_TAXONS/@numtaxo" />
14
 
15
<xsl:template match="/">
16
    <tr>
17
        <td align="center">
18
            <h3 class="titlePage">Identit&#233; du taxon</h3>
19
        </td>
20
    </tr>
21
    <xsl:apply-templates/>
22
</xsl:template>
23
 
24
<xsl:template match="FICHE_IDENTITES_TAXONS">
25
    <xsl:if test="not(boolean(/FICHE_IDENTITES_TAXONS/NOM_VALIDE)) and not(boolean(/FICHE_IDENTITES_TAXONS/LISTE_NOMS_VALIDES))">
26
        <tr>
27
            <td>
28
                <h5 class="insTitle1">Nom retenu (correct)</h5>
29
            </td>
30
        </tr>
31
        <tr class="eflore_avertissement">
32
            <td align="center">
33
                Il n'existe aucun nom retenu (correct) pour ce taxon relativement à la classification courante.
34
            </td>
35
        </tr>
36
    </xsl:if>
37
    <xsl:if test="not(boolean($taxo_url))">
38
        <xsl:apply-templates select ="LISTE_SYNONYMES" mode="nom_url"/>
39
    </xsl:if>
40
    <xsl:apply-templates select ="NOM_VALIDE"/>
41
    <xsl:apply-templates select ="LISTE_NOMS_VALIDES"/>
42
    <xsl:apply-templates select ="LISTE_NOMS_TAXONS_PARENTS"/>
43
    <xsl:apply-templates select ="LISTE_SYNONYMES"/>
44
    <xsl:apply-templates select ="LISTE_NOMS_VERNACULAIRES"/>
45
</xsl:template>
46
 
47
<!-- Le template suivant permet de récupérer dans la liste des synonymes le nom sélectionné dans "listetaxons.xls"-->
48
<!-- car dans "listetaxons.xsl", l'url permettant d'obtenir la fiche d'identité du taxon utilise le n° nomenclatural-->
49
<!-- Ce n° nomenclatural apparait dans dans la balise "FICHE_IDENTITES_TAXONS" sous forme de l'attribut "numnom"-->
50
<xsl:template match="LISTE_SYNONYMES" mode="nom_url">
51
    <tr>
52
        <td>
53
            <h5 class="insTitle1">Nom s&#233;lectionn&#233; pr&#233;c&#233;demment</h5>
54
        </td>
55
    </tr>
56
    <tr class="texte_tb">
57
        <td>
58
            <li>
59
                <xsl:if test="/FICHE_IDENTITES_TAXONS/NOM_VALIDE/NOM_TAXON/@numnom = $nom_url">
60
                    <xsl:apply-templates select="/FICHE_IDENTITES_TAXONS/NOM_VALIDE/NOM_TAXON[@numnom]" />
61
                </xsl:if>
62
                <xsl:if test="NOM_TAXON/@numnom = $nom_url">
63
                    <xsl:apply-templates select="NOM_TAXON[@numnom = $nom_url]" />
64
                </xsl:if>
65
                <xsl:text>  </xsl:text>
66
                <xsl:text> [ </xsl:text>
67
                <span>
68
                    <xsl:attribute name="class">eflore_num_nomen</xsl:attribute>
69
                        <xsl:value-of select="$nom_url"/>
70
                </span>
71
                <xsl:text> - </xsl:text>
72
                <span>
73
                    <xsl:attribute name="class">eflore_num_taxo</xsl:attribute>
74
                        <xsl:value-of select="@numtaxo"/>
75
                </span>
76
                <xsl:text> ] </xsl:text>
77
            </li>
78
            <!--<xsl:if test="boolean($taxo_url)">
79
                <xsl:apply-templates select="/FICHE_IDENTITES_TAXONS/LISTE_NOMS_VERNACULAIRES/NOM_VERNACULAIRE[@numtaxo = $taxo_url]" />
80
            </xsl:if>-->
81
            <br />
82
        </td>
83
    </tr>
84
</xsl:template>
85
 
86
<xsl:template match="NOM_VALIDE">
87
    <xsl:apply-templates select="NOM_TAXON"  mode="nomRetenu"/>
88
    <tr>
89
        <td>
90
            <h5 class="insTitle1">En image</h5>
91
        </td>
92
    </tr>
93
    <tr class="eflore_commentaire">
94
        <td>
95
            Cliquer sur le bouton "Recherche Google" pour afficher des images du taxon (résultat non garanti...).
96
        </td>
97
    </tr>
98
    <tr>
99
        <td class="texte_tb">
100
            <form method="get">
101
                <xsl:attribute name="action">http://images.google.com/images</xsl:attribute>
102
                <xsl:attribute name="target">_blank</xsl:attribute>
103
                <a>
104
                    <img>
105
                        <xsl:attribute name="src">http://www.google.com/logos/Logo_25wht.gif</xsl:attribute>
106
                        <xsl:attribute name="border">0</xsl:attribute>
107
                        <xsl:attribute name="alt">Google</xsl:attribute>
108
                        <xsl:attribute name="align">absmiddle</xsl:attribute>
109
                    </img>
110
                </a>
111
                <input>
112
                    <xsl:attribute name="type">text</xsl:attribute>
113
                    <xsl:attribute name="name">q</xsl:attribute>
114
                    <xsl:attribute name="size">25</xsl:attribute>
115
                    <xsl:attribute name="maxlength">255</xsl:attribute>
116
                    <xsl:attribute name="value">
117
                        <xsl:value-of  select="NOM_TAXON/NOM"/>
118
                    </xsl:attribute>
119
                </input>
120
                <input>
121
                    <xsl:attribute name="class">texte_tb</xsl:attribute>
122
                    <xsl:attribute name="type">submit</xsl:attribute>
123
                    <xsl:attribute name="name">btnG</xsl:attribute>
124
                    <xsl:attribute name="value">Recherche Google</xsl:attribute>
125
                </input>
126
                <input>
127
                    <xsl:attribute name="type">hidden</xsl:attribute>
128
                    <xsl:attribute name="name">ie</xsl:attribute>
129
                    <xsl:attribute name="value">ISO-8859-1</xsl:attribute>
130
                </input>
131
                <input>
132
                    <xsl:attribute name="type">hidden</xsl:attribute>
133
                    <xsl:attribute name="name">oe</xsl:attribute>
134
                    <xsl:attribute name="value">ISO-8859-1</xsl:attribute>
135
                </input>
136
                <input>
137
                    <xsl:attribute name="type">hidden</xsl:attribute>
138
                    <xsl:attribute name="name">hl</xsl:attribute>
139
                    <xsl:attribute name="value">fr</xsl:attribute>
140
                </input>
141
            </form>
142
        </td>
143
    </tr>
144
</xsl:template>
145
 
146
<xsl:template match="LISTE_NOMS_VALIDES">
147
    <tr class="insTitle1">
148
        <td>
149
            <h5>Noms valides</h5>
150
        </td>
151
    </tr>
152
    <tr class="texte_tb">
153
        <td>
154
            <ul>
155
                <xsl:apply-templates select="NOM_TAXON" />
156
            </ul>
157
        </td>
158
    </tr>
159
</xsl:template>
160
 
161
<xsl:template match="LISTE_NOMS_TAXONS_PARENTS">
162
    <tr>
163
        <td>
164
            <h5 class="insTitle1">Niveaux taxinomiques supérieurs</h5>
165
        </td>
166
    </tr>
167
    <tr class="eflore_commentaire">
168
        <td>
169
            En cliquant sur (...)  situé aprés le niveau taxinomique vous obtiendrez la liste des taxons retenus (corrects) qu'il contient.
170
        </td>
171
    </tr>
172
    <tr class="texte_tb">
173
        <td>
174
            <ul>
175
                <xsl:apply-templates select="NOM_TAXON_PARENTS/NOM_TAXON" mode="parent" />
176
            </ul>
177
        </td>
178
    </tr>
179
</xsl:template>
180
 
181
<xsl:template match="LISTE_SYNONYMES">
182
    <tr>
183
        <td>
184
            <h5 class="insTitle1">Synonymes</h5>
185
        </td>
186
    </tr>
187
 
188
    <!-- Affiches les synonymes nomenclaturaux s'il y en a.-->
189
    <xsl:if test="NOM_TAXON/@tsyn = 1">
190
        <tr class="texte_tb">
191
            <td>
192
                <h6>Synonymes nomenclaturaux</h6>
193
            </td>
194
        </tr>
195
        <tr class="texte_tb">
196
            <td>
197
                <ul>
198
                    <xsl:apply-templates select="NOM_TAXON[@tsyn = 1]" mode="biblio_tsyn"/>
199
                </ul>
200
                <br />
201
            </td>
202
        </tr>
203
    </xsl:if>
204
 
205
    <!-- Affiches les synonymes taxinomiques s'il y en a.-->
206
    <xsl:if test="NOM_TAXON/@tsyn = 2">
207
        <tr class="texte_tb">
208
            <td>
209
                <h6>Synonymes taxinomiques</h6>
210
            </td>
211
        </tr>
212
        <tr class="texte_tb">
213
            <td>
214
                <ul>
215
                    <xsl:apply-templates select="NOM_TAXON[@tsyn = 2]" mode="biblio_tsyn"/>
216
                </ul>
217
                <br />
218
            </td>
219
        </tr>
220
    </xsl:if>
221
 
222
    <!-- Affiches les synonymes de type inconnu s'il y en a.-->
223
    <xsl:if test="NOM_TAXON/@tsyn = 3">
224
        <tr class="texte_tb">
225
            <td>
226
                <h6>Synonymes de type inconnu</h6>
227
            </td>
228
        </tr>
229
        <tr class="texte_tb">
230
            <td>
231
                <ul>
232
                    <xsl:apply-templates select="NOM_TAXON[@tsyn = 3]" mode="biblio_tsyn"/>
233
                </ul>
234
                <br />
235
            </td>
236
        </tr>
237
    </xsl:if>
238
 
239
    <!-- Affiches les synonymes de type "inclus dans" s'il y en a.-->
240
    <xsl:if test="NOM_TAXON/@tsyn = 4">
241
        <tr class="texte_tb">
242
            <td>
243
                <h6>Synonymes de type "inclus dans"</h6>
244
            </td>
245
        </tr>
246
        <tr class="texte_tb">
247
            <td>
248
                <ul>
249
                        <xsl:apply-templates select="NOM_TAXON[@tsyn = 4]" mode="biblio_tsyn"/>
250
                </ul>
251
                <br />
252
            </td>
253
        </tr>
254
    </xsl:if>
255
 
256
    <!-- Affiches les synonymes de type "inclus dans" s'il y en a.-->
257
    <xsl:if test="NOM_TAXON/@tsyn = 5">
258
        <tr class="texte_tb">
259
            <td>
260
                <h6>Synonymes de type "au sens de (sensu)"</h6>
261
            </td>
262
        </tr>
263
        <tr class="texte_tb">
264
            <td>
265
                <ul>
266
                    <xsl:apply-templates select="NOM_TAXON[@tsyn = 5]" mode="biblio_tsyn"/>
267
                </ul>
268
                <br />
269
            </td>
270
        </tr>
271
    </xsl:if>
272
</xsl:template>
273
 
274
<xsl:template match="LISTE_NOMS_VERNACULAIRES">
275
    <tr>
276
        <td>
277
            <h5 class="insTitle1">Noms vernaculaires</h5>
278
        </td>
279
    </tr>
280
    <tr class="texte_tb">
281
        <td>
282
            <table border="0" width="*" cellpading="0" cellspacing="0">
283
                <tr class="eflore_commentaire" >
284
                    <td width="50" align="left">
285
                        Langue
286
                    </td>
287
                    <td width="30" align="left">
288
                        Pays
289
                    </td>
290
                    <td width="220" align="left">
291
                        Nom
292
                    </td>
293
                    <td width="150">
294
                        Emploi
295
                    </td>
296
                    <td width="50">
297
                        Genre
298
                    </td>
299
                    <td width="50">
300
                        Nombre
301
                    </td>
302
                </tr>
303
                <xsl:apply-templates select="NOM_VERNACULAIRE" />
304
            </table>
305
        </td>
306
    </tr>
307
</xsl:template>
308
 
309
<xsl:template match="NOM_TAXON">
310
    <xsl:apply-templates select="NOM" />
311
</xsl:template>
312
 
313
<xsl:template match="NOM_TAXON" mode="nomRetenu">
314
    <tr>
315
        <td>
316
            <h5 class="insTitle1">Nom retenu (correct) correspondant</h5>
317
            <xsl:text>  </xsl:text>
318
            <!--<a href="http://test.tela-botanica.org/tmp/pdf.php" target="_blank"><img src="Local/icons/pdf.gif" border="0"></img></a>-->
319
        </td>
320
    </tr>
321
    <tr class="texte_tb">
322
        <td>
323
            <li>
324
                <b>
325
                    <xsl:apply-templates select="NOM" />
326
                </b>
327
                <xsl:apply-templates select="BIBLIOGRAPHIE" />
328
                <xsl:apply-templates select="INFO_COMBINAISON" />
329
                <xsl:text>  </xsl:text>
330
                <xsl:text> [ </xsl:text>
331
                <span>
332
                    <xsl:attribute name="class">eflore_num_nomen</xsl:attribute>
333
                        <xsl:value-of select="@numnom"/>
334
                </span>
335
                <xsl:text> - </xsl:text>
336
                <span>
337
                    <xsl:attribute name="class">eflore_num_taxo</xsl:attribute>
338
                        <xsl:value-of select="/FICHE_IDENTITES_TAXONS/NOM_VALIDE/@numtaxo"/>
339
                 </span>
340
                 <xsl:text> ] </xsl:text>
341
            </li>
342
            <br />
343
        </td>
344
    </tr>
345
</xsl:template>
346
 
347
<xsl:template match="NOM_TAXON" mode="biblio_tsyn">
348
    <li>
349
    <!-- Affichage du nom -->
350
    <xsl:apply-templates select="NOM" />
351
    <br />
352
    <xsl:text>    </xsl:text>
353
    <!-- Cas où le nom comporte des infos de biblio ou sur la combinaison -->
354
    <xsl:if test="boolean(BIBLIOGRAPHIE) or boolean (INFO_COMBINAISON)">
355
        <!-- Affichage de la référence biblio et des commentaires nomenclaturaux -->
356
        <xsl:apply-templates select="BIBLIOGRAPHIE" />
357
        <xsl:apply-templates select="INFO_COMBINAISON" />
358
    </xsl:if>
359
    <!-- Affichage des numéros nomenclatural et taxonomique -->
360
    <xsl:text>  </xsl:text>
361
    <xsl:text> [ </xsl:text>
362
        <span>
363
            <xsl:attribute name="class">eflore_num_nomen</xsl:attribute>
364
                <xsl:value-of select="@numnom"/>
365
        </span>
366
        <xsl:text> - </xsl:text>
367
        <span>
368
            <xsl:attribute name="class">eflore_num_taxo</xsl:attribute>
369
                <xsl:value-of select="../@numtaxo"/>
370
        </span>
371
        <xsl:text> ] </xsl:text>
372
    </li>
373
</xsl:template>
374
 
375
<xsl:template match="NOM_TAXON" mode="parent">
376
    <li>
377
        <b>
378
            <xsl:apply-templates select="NOM" />
379
        </b>
380
        <a>
381
            <xsl:attribute name="style">text-decoration: none;</xsl:attribute>
382
            <xsl:attribute name="href">transformer.php?xslt=classificationtaxons.xsl&amp;paramxslt=<xsl:value-of select="position()+2"/>&amp;servicexml=donneclassificationtaxons.php&amp;profondeur=<xsl:value-of select="position()+2"/>&amp;numclass=1&amp;numnom=<xsl:value-of select="@numnom" /></xsl:attribute>
383
            (...)
384
        </a>
385
    </li>
386
</xsl:template>
387
 
388
<xsl:template match="NOM">
389
    &#160;
390
    <b>
391
        <xsl:value-of select="@type"/>
392
    </b>
393
    <i>
394
        <xsl:value-of select="."/>
395
    </i>
396
    &#160;
397
    <xsl:value-of select="@auteur"/>
398
</xsl:template>
399
 
400
<xsl:template match="BIBLIOGRAPHIE ">
401
    &#160;
402
    <xsl:value-of select="@annee"/>
403
    &#160;
404
    <xsl:value-of select="."/>
405
</xsl:template>
406
 
407
<xsl:template match="INFO_COMBINAISON ">
408
    &#160;
409
    <xsl:value-of select="."/>
410
</xsl:template>
411
 
412
<xsl:template match="NOM_VERNACULAIRE">
413
    <tr class="texte_tb" >
414
        <td width="50" align="left">
415
            <li>
416
                <xsl:value-of select="@langue"/>
417
            </li>
418
        </td>
419
        <td width="30" align="left">
420
            <xsl:value-of select="@pays"/>
421
        </td>
422
        <td width="220" >
423
        <xsl:if test="@emploi='1'">
424
            <b>
425
                <xsl:value-of select="."/>
426
            </b>
427
        </xsl:if>
428
        <xsl:if test="@emploi='0' or @emploi='2' or @emploi='3'">
429
            <xsl:value-of select="."/>
430
        </xsl:if>
431
        </td>
432
        <td width="150" >
433
                <xsl:choose>
434
                    <xsl:when test="@emploi='0'">
435
                        &#032;
436
                    </xsl:when>
437
                    <xsl:when test="@emploi='1'">
438
                        recommandé ou typique
439
                    </xsl:when>
440
                    <xsl:when test="@emploi='2'">
441
                        secondaire ou régional
442
                    </xsl:when>
443
                    <xsl:when test="@emploi='3'">
444
                        peu usité et à éviter
445
                    </xsl:when>
446
                </xsl:choose>
447
        </td>
448
        <td width="50" align="center">
449
            <xsl:choose>
450
                <xsl:when test="@genre='0'">
451
                    &#032;
452
                </xsl:when>
453
                <xsl:when test="@genre='1'">
454
                    masculin
455
                </xsl:when>
456
                <xsl:when test="@genre='2'">
457
                    féminin
458
                </xsl:when>
459
                <xsl:when test="@genre='3'">
460
                    neutre
461
                </xsl:when>
462
                <xsl:when test="@genre='4'">
463
                    duel
464
                </xsl:when>
465
            </xsl:choose>
466
        </td>
467
        <td width="50" align="center">
468
            <xsl:choose>
469
                <xsl:when test="@nombre='0'">
470
                    &#032;
471
                </xsl:when>
472
                <xsl:when test="@nombre='1'">
473
                    singulier
474
                </xsl:when>
475
                <xsl:when test="@nombre='2'">
476
                    pluriel
477
                </xsl:when>
478
                <xsl:when test="@nombre='3'">
479
                    duel
480
                </xsl:when>
481
            </xsl:choose>
482
        </td>
483
    </tr>
484
</xsl:template>
485
 
486
</xsl:stylesheet>