Subversion Repositories eFlore/Archives.eflore-consultation-v1

Compare Revisions

Ignore whitespace Rev 4 → Rev 3

/trunk/bibliotheque/xsl/identitetaxon_nn4.xsl
New file
0,0 → 1,486
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" encoding="iso-8859-1" version="1.0" standalone="yes" indent="yes" />
 
<!-- DECLARATION DE VARIABLES-->
<!-- Variable "nom_url" récupérant le numéro nomenclatural du nom recherché.-->
<!-- Ce numéro est présent dans l'url appelant le service XML "donneidentitestaxons".-->
<xsl:variable name="nom_url" select="/FICHE_IDENTITES_TAXONS/@numnom" />
 
<!-- Variable "taxo_url" récupérant le numéro taxonomique du nom recherché,-->
<!-- donc présent dans l'url appelant le service XML "donneidentitestaxons".-->
<!-- Utilisé pour récupérer le nom vernaculaire séléctionné.-->
<xsl:variable name="taxo_url" select="/FICHE_IDENTITES_TAXONS/@numtaxo" />
 
<xsl:template match="/">
<tr>
<td align="center">
<h3 class="titlePage">Identit&#233; du taxon</h3>
</td>
</tr>
<xsl:apply-templates/>
</xsl:template>
 
<xsl:template match="FICHE_IDENTITES_TAXONS">
<xsl:if test="not(boolean(/FICHE_IDENTITES_TAXONS/NOM_VALIDE)) and not(boolean(/FICHE_IDENTITES_TAXONS/LISTE_NOMS_VALIDES))">
<tr>
<td>
<h5 class="insTitle1">Nom retenu (correct)</h5>
</td>
</tr>
<tr class="eflore_avertissement">
<td align="center">
Il n'existe aucun nom retenu (correct) pour ce taxon relativement à la classification courante.
</td>
</tr>
</xsl:if>
<xsl:if test="not(boolean($taxo_url))">
<xsl:apply-templates select ="LISTE_SYNONYMES" mode="nom_url"/>
</xsl:if>
<xsl:apply-templates select ="NOM_VALIDE"/>
<xsl:apply-templates select ="LISTE_NOMS_VALIDES"/>
<xsl:apply-templates select ="LISTE_NOMS_TAXONS_PARENTS"/>
<xsl:apply-templates select ="LISTE_SYNONYMES"/>
<xsl:apply-templates select ="LISTE_NOMS_VERNACULAIRES"/>
</xsl:template>
 
<!-- Le template suivant permet de récupérer dans la liste des synonymes le nom sélectionné dans "listetaxons.xls"-->
<!-- car dans "listetaxons.xsl", l'url permettant d'obtenir la fiche d'identité du taxon utilise le n° nomenclatural-->
<!-- Ce n° nomenclatural apparait dans dans la balise "FICHE_IDENTITES_TAXONS" sous forme de l'attribut "numnom"-->
<xsl:template match="LISTE_SYNONYMES" mode="nom_url">
<tr>
<td>
<h5 class="insTitle1">Nom s&#233;lectionn&#233; pr&#233;c&#233;demment</h5>
</td>
</tr>
<tr class="texte_tb">
<td>
<li>
<xsl:if test="/FICHE_IDENTITES_TAXONS/NOM_VALIDE/NOM_TAXON/@numnom = $nom_url">
<xsl:apply-templates select="/FICHE_IDENTITES_TAXONS/NOM_VALIDE/NOM_TAXON[@numnom]" />
</xsl:if>
<xsl:if test="NOM_TAXON/@numnom = $nom_url">
<xsl:apply-templates select="NOM_TAXON[@numnom = $nom_url]" />
</xsl:if>
<xsl:text> </xsl:text>
<xsl:text> [ </xsl:text>
<span>
<xsl:attribute name="class">eflore_num_nomen</xsl:attribute>
<xsl:value-of select="$nom_url"/>
</span>
<xsl:text> - </xsl:text>
<span>
<xsl:attribute name="class">eflore_num_taxo</xsl:attribute>
<xsl:value-of select="@numtaxo"/>
</span>
<xsl:text> ] </xsl:text>
</li>
<!--<xsl:if test="boolean($taxo_url)">
<xsl:apply-templates select="/FICHE_IDENTITES_TAXONS/LISTE_NOMS_VERNACULAIRES/NOM_VERNACULAIRE[@numtaxo = $taxo_url]" />
</xsl:if>-->
<br />
</td>
</tr>
</xsl:template>
 
<xsl:template match="NOM_VALIDE">
<xsl:apply-templates select="NOM_TAXON" mode="nomRetenu"/>
<tr>
<td>
<h5 class="insTitle1">En image</h5>
</td>
</tr>
<tr class="eflore_commentaire">
<td>
Cliquer sur le bouton "Recherche Google" pour afficher des images du taxon (résultat non garanti...).
</td>
</tr>
<tr>
<td class="texte_tb">
<form method="get">
<xsl:attribute name="action">http://images.google.com/images</xsl:attribute>
<xsl:attribute name="target">_blank</xsl:attribute>
<a>
<img>
<xsl:attribute name="src">http://www.google.com/logos/Logo_25wht.gif</xsl:attribute>
<xsl:attribute name="border">0</xsl:attribute>
<xsl:attribute name="alt">Google</xsl:attribute>
<xsl:attribute name="align">absmiddle</xsl:attribute>
</img>
</a>
<input>
<xsl:attribute name="type">text</xsl:attribute>
<xsl:attribute name="name">q</xsl:attribute>
<xsl:attribute name="size">25</xsl:attribute>
<xsl:attribute name="maxlength">255</xsl:attribute>
<xsl:attribute name="value">
<xsl:value-of select="NOM_TAXON/NOM"/>
</xsl:attribute>
</input>
<input>
<xsl:attribute name="class">texte_tb</xsl:attribute>
<xsl:attribute name="type">submit</xsl:attribute>
<xsl:attribute name="name">btnG</xsl:attribute>
<xsl:attribute name="value">Recherche Google</xsl:attribute>
</input>
<input>
<xsl:attribute name="type">hidden</xsl:attribute>
<xsl:attribute name="name">ie</xsl:attribute>
<xsl:attribute name="value">ISO-8859-1</xsl:attribute>
</input>
<input>
<xsl:attribute name="type">hidden</xsl:attribute>
<xsl:attribute name="name">oe</xsl:attribute>
<xsl:attribute name="value">ISO-8859-1</xsl:attribute>
</input>
<input>
<xsl:attribute name="type">hidden</xsl:attribute>
<xsl:attribute name="name">hl</xsl:attribute>
<xsl:attribute name="value">fr</xsl:attribute>
</input>
</form>
</td>
</tr>
</xsl:template>
 
<xsl:template match="LISTE_NOMS_VALIDES">
<tr class="insTitle1">
<td>
<h5>Noms valides</h5>
</td>
</tr>
<tr class="texte_tb">
<td>
<ul>
<xsl:apply-templates select="NOM_TAXON" />
</ul>
</td>
</tr>
</xsl:template>
 
<xsl:template match="LISTE_NOMS_TAXONS_PARENTS">
<tr>
<td>
<h5 class="insTitle1">Niveaux taxinomiques supérieurs</h5>
</td>
</tr>
<tr class="eflore_commentaire">
<td>
En cliquant sur (...) situé aprés le niveau taxinomique vous obtiendrez la liste des taxons retenus (corrects) qu'il contient.
</td>
</tr>
<tr class="texte_tb">
<td>
<ul>
<xsl:apply-templates select="NOM_TAXON_PARENTS/NOM_TAXON" mode="parent" />
</ul>
</td>
</tr>
</xsl:template>
 
<xsl:template match="LISTE_SYNONYMES">
<tr>
<td>
<h5 class="insTitle1">Synonymes</h5>
</td>
</tr>
 
<!-- Affiches les synonymes nomenclaturaux s'il y en a.-->
<xsl:if test="NOM_TAXON/@tsyn = 1">
<tr class="texte_tb">
<td>
<h6>Synonymes nomenclaturaux</h6>
</td>
</tr>
<tr class="texte_tb">
<td>
<ul>
<xsl:apply-templates select="NOM_TAXON[@tsyn = 1]" mode="biblio_tsyn"/>
</ul>
<br />
</td>
</tr>
</xsl:if>
 
<!-- Affiches les synonymes taxinomiques s'il y en a.-->
<xsl:if test="NOM_TAXON/@tsyn = 2">
<tr class="texte_tb">
<td>
<h6>Synonymes taxinomiques</h6>
</td>
</tr>
<tr class="texte_tb">
<td>
<ul>
<xsl:apply-templates select="NOM_TAXON[@tsyn = 2]" mode="biblio_tsyn"/>
</ul>
<br />
</td>
</tr>
</xsl:if>
 
<!-- Affiches les synonymes de type inconnu s'il y en a.-->
<xsl:if test="NOM_TAXON/@tsyn = 3">
<tr class="texte_tb">
<td>
<h6>Synonymes de type inconnu</h6>
</td>
</tr>
<tr class="texte_tb">
<td>
<ul>
<xsl:apply-templates select="NOM_TAXON[@tsyn = 3]" mode="biblio_tsyn"/>
</ul>
<br />
</td>
</tr>
</xsl:if>
 
<!-- Affiches les synonymes de type "inclus dans" s'il y en a.-->
<xsl:if test="NOM_TAXON/@tsyn = 4">
<tr class="texte_tb">
<td>
<h6>Synonymes de type "inclus dans"</h6>
</td>
</tr>
<tr class="texte_tb">
<td>
<ul>
<xsl:apply-templates select="NOM_TAXON[@tsyn = 4]" mode="biblio_tsyn"/>
</ul>
<br />
</td>
</tr>
</xsl:if>
 
<!-- Affiches les synonymes de type "inclus dans" s'il y en a.-->
<xsl:if test="NOM_TAXON/@tsyn = 5">
<tr class="texte_tb">
<td>
<h6>Synonymes de type "au sens de (sensu)"</h6>
</td>
</tr>
<tr class="texte_tb">
<td>
<ul>
<xsl:apply-templates select="NOM_TAXON[@tsyn = 5]" mode="biblio_tsyn"/>
</ul>
<br />
</td>
</tr>
</xsl:if>
</xsl:template>
 
<xsl:template match="LISTE_NOMS_VERNACULAIRES">
<tr>
<td>
<h5 class="insTitle1">Noms vernaculaires</h5>
</td>
</tr>
<tr class="texte_tb">
<td>
<table border="0" width="*" cellpading="0" cellspacing="0">
<tr class="eflore_commentaire" >
<td width="50" align="left">
Langue
</td>
<td width="30" align="left">
Pays
</td>
<td width="220" align="left">
Nom
</td>
<td width="150">
Emploi
</td>
<td width="50">
Genre
</td>
<td width="50">
Nombre
</td>
</tr>
<xsl:apply-templates select="NOM_VERNACULAIRE" />
</table>
</td>
</tr>
</xsl:template>
 
<xsl:template match="NOM_TAXON">
<xsl:apply-templates select="NOM" />
</xsl:template>
 
<xsl:template match="NOM_TAXON" mode="nomRetenu">
<tr>
<td>
<h5 class="insTitle1">Nom retenu (correct) correspondant</h5>
<xsl:text> </xsl:text>
<!--<a href="http://test.tela-botanica.org/tmp/pdf.php" target="_blank"><img src="Local/icons/pdf.gif" border="0"></img></a>-->
</td>
</tr>
<tr class="texte_tb">
<td>
<li>
<b>
<xsl:apply-templates select="NOM" />
</b>
<xsl:apply-templates select="BIBLIOGRAPHIE" />
<xsl:apply-templates select="INFO_COMBINAISON" />
<xsl:text> </xsl:text>
<xsl:text> [ </xsl:text>
<span>
<xsl:attribute name="class">eflore_num_nomen</xsl:attribute>
<xsl:value-of select="@numnom"/>
</span>
<xsl:text> - </xsl:text>
<span>
<xsl:attribute name="class">eflore_num_taxo</xsl:attribute>
<xsl:value-of select="/FICHE_IDENTITES_TAXONS/NOM_VALIDE/@numtaxo"/>
</span>
<xsl:text> ] </xsl:text>
</li>
<br />
</td>
</tr>
</xsl:template>
 
<xsl:template match="NOM_TAXON" mode="biblio_tsyn">
<li>
<!-- Affichage du nom -->
<xsl:apply-templates select="NOM" />
<br />
<xsl:text> </xsl:text>
<!-- Cas où le nom comporte des infos de biblio ou sur la combinaison -->
<xsl:if test="boolean(BIBLIOGRAPHIE) or boolean (INFO_COMBINAISON)">
<!-- Affichage de la référence biblio et des commentaires nomenclaturaux -->
<xsl:apply-templates select="BIBLIOGRAPHIE" />
<xsl:apply-templates select="INFO_COMBINAISON" />
</xsl:if>
<!-- Affichage des numéros nomenclatural et taxonomique -->
<xsl:text> </xsl:text>
<xsl:text> [ </xsl:text>
<span>
<xsl:attribute name="class">eflore_num_nomen</xsl:attribute>
<xsl:value-of select="@numnom"/>
</span>
<xsl:text> - </xsl:text>
<span>
<xsl:attribute name="class">eflore_num_taxo</xsl:attribute>
<xsl:value-of select="../@numtaxo"/>
</span>
<xsl:text> ] </xsl:text>
</li>
</xsl:template>
 
<xsl:template match="NOM_TAXON" mode="parent">
<li>
<b>
<xsl:apply-templates select="NOM" />
</b>
<a>
<xsl:attribute name="style">text-decoration: none;</xsl:attribute>
<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>
(...)
</a>
</li>
</xsl:template>
 
<xsl:template match="NOM">
&#160;
<b>
<xsl:value-of select="@type"/>
</b>
<i>
<xsl:value-of select="."/>
</i>
&#160;
<xsl:value-of select="@auteur"/>
</xsl:template>
 
<xsl:template match="BIBLIOGRAPHIE ">
&#160;
<xsl:value-of select="@annee"/>
&#160;
<xsl:value-of select="."/>
</xsl:template>
 
<xsl:template match="INFO_COMBINAISON ">
&#160;
<xsl:value-of select="."/>
</xsl:template>
 
<xsl:template match="NOM_VERNACULAIRE">
<tr class="texte_tb" >
<td width="50" align="left">
<li>
<xsl:value-of select="@langue"/>
</li>
</td>
<td width="30" align="left">
<xsl:value-of select="@pays"/>
</td>
<td width="220" >
<xsl:if test="@emploi='1'">
<b>
<xsl:value-of select="."/>
</b>
</xsl:if>
<xsl:if test="@emploi='0' or @emploi='2' or @emploi='3'">
<xsl:value-of select="."/>
</xsl:if>
</td>
<td width="150" >
<xsl:choose>
<xsl:when test="@emploi='0'">
&#032;
</xsl:when>
<xsl:when test="@emploi='1'">
recommandé ou typique
</xsl:when>
<xsl:when test="@emploi='2'">
secondaire ou régional
</xsl:when>
<xsl:when test="@emploi='3'">
peu usité et à éviter
</xsl:when>
</xsl:choose>
</td>
<td width="50" align="center">
<xsl:choose>
<xsl:when test="@genre='0'">
&#032;
</xsl:when>
<xsl:when test="@genre='1'">
masculin
</xsl:when>
<xsl:when test="@genre='2'">
féminin
</xsl:when>
<xsl:when test="@genre='3'">
neutre
</xsl:when>
<xsl:when test="@genre='4'">
duel
</xsl:when>
</xsl:choose>
</td>
<td width="50" align="center">
<xsl:choose>
<xsl:when test="@nombre='0'">
&#032;
</xsl:when>
<xsl:when test="@nombre='1'">
singulier
</xsl:when>
<xsl:when test="@nombre='2'">
pluriel
</xsl:when>
<xsl:when test="@nombre='3'">
duel
</xsl:when>
</xsl:choose>
</td>
</tr>
</xsl:template>
 
</xsl:stylesheet>