IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

Problème de chemin


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 2
    Par défaut Problème de chemin
    Bonjour,
    J'ai un projet de langage Web à rendre dans quelques jours, et je coince sur un petit bout de code, si quelqu'un pourrait me débloquer sa serait vraiment sympa !

    Alors voila mon problème :
    Pour commencer voici la structure du fichier XML :

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="transformation.xsl"?>
    ns1:annuaire  xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
       xmlns:ns1='http://ProjetLW.FLRRT'
       xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
       xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"  
       xmlns:dc="http://purl.org/dc/elements/1.1/"
       xsi:schemaLocation="http://ProjetLW.FLRRT ../xsd/projet.xsd">
       <rdf:RDF>
        <rdf:Description>
            <dc:creator>...</dc:creator>
            <dc:subject>Langages pour le Web</dc:subject>
            <dc:description>Projet de LW</dc:description>
            <dc:title>Projet</dc:title>
            <dc:date>19 october 2011</dc:date>
        </rdf:Description>
        </rdf:RDF>
    <ns1:contact>
            <ns1:nom></ns1:nom>
            <ns1:prénom></ns1:prénom>
            <ns1:adresseLocale>
                <ns1:pays></ns1:pays>
                <ns1:ville></ns1:ville>
                <ns1:codePostal></ns1:codePostal>
                <ns1:rue></ns1:rue>
                <ns1:numéro></ns1:numéro>
                <ns1:numEtage></ns1:numEtage>
                <ns1:boitePostale></ns1:boitePostale>
                <geo:lat></geo:lat>
                <geo:long></geo:long>
            </ns1:adresseLocale>
            <ns1:adresseGénérale>
                <ns1:pays></ns1:pays>
                <ns1:ville></ns1:ville>
                <ns1:codePostal></ns1:codePostal>
                <ns1:rue></ns1:rue>
                <ns1:numéro></ns1:numéro>
                <ns1:numEtage></ns1:numEtage>
                <ns1:boitePostale></ns1:boitePostale>
                <geo:lat></geo:lat>
                <geo:long></geo:long>
            </ns1:adresseGénérale>
            <ns1:numTel></ns1:numTel>
            <ns1:siteWeb></ns1:siteWeb>
            <ns1:email></ns1:email>
        </ns1:contact>
        ...
    Je dois le transformer en XML / KML pour faire une géolocalisation, donc au format suivant :

    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <kml xmlns="http://earth.google.com/kml/2.2">
      <Document>
        <name></name>
        <description></description>
        <Placemark>
          <name></name>
          <description><![CDATA[
    <dl>
    <dt>Adresse : </dt>
    <dd>Laboratoire</dd>
    <dd>Facult&eacute; de M&eacute;decine</dd>
    <dd>38706 La Tronche</dd>
    <dd>France</dd>
    </dl>
    ]]>
          </description>
          <Point>
            <coordinates>5.748955,45.198954</coordinates>
          </Point>
        </Placemark>
      </Document>
    </kml>

    Et voici mon code XSLT :
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
     
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:ns1="http://ProjetLW.FLRRT" 
    xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
    xmlns:dc="http://purl.org/dc/elements/1.1/">
     
        <xsl:output method="xml" indent="yes"/>
        <xsl:template match="ns1:annuaire">
    			<kml xmlns="http://earth.google.com/kml/2.2">
    			  <Document>
    				<name>Géolocalisation</name>
    				<description>Projet 2011</description>
     
    					<xsl:for-each select="ns1:contact">
                            <xsl:apply-templates select="."/>
                        </xsl:for-each>
                  </Document>
                  </kml>
        </xsl:template>
     
        <xsl:template match="ns1:contact">
        	<Placemark>
    		  <name><xsl:value-of select="ns1:nom"/>*<xsl:value-of select="ns1:prénom"/></name>
    		  <description>
    			  	<dl>
    				<dt>Adresse : </dt>
    				<dd><xsl:value-of select="ns1:nom"/> <xsl:value-of select="ns1:prénom"/></dd>
    				<xsl:apply-templates select="ns1:adresseLocale"/>
    				</dl>
    			</description>
    			<Point>
    	  		<coordinates>
    	  			<xsl:apply-templates select="geo:lat"/>, <xsl:apply-templates select="geo:long"/>
    	  		</coordinates>
    	  		</Point>
    			</Placemark>
        </xsl:template>
     
       <xsl:template match="ns1:adresseLocale">
       	  <dd>
    		  <xsl:value-of select="ns1:rue"/>*<xsl:value-of select="ns1:codePostal"/>
          </dd>
          <dd>
          	  <xsl:value-of select="ns1:codePostal"/>* <xsl:value-of select="ns1:ville"/>‚*<xsl:value-of select="ns1:pays"/>*
    	  </dd>
        </xsl:template>
     
        <xsl:template match="geo:lat">
        	<xsl:value-of select=".">
        </xsl:template>
     
        <xsl:template match="geo:long">
        	<xsl:value-of select=".">
        </xsl:template>
     
    </xsl:stylesheet>

    Je sais que j'ai une erreur pour la récupération des coordonnées GPS... Mais je bloque, je vois pas comment je pourrais faire autrement.
    Bref, si quelqu'un pourrait me mettre sur la piste sa serait vraiment cool :-)

    Merci d'avance !
    Florent

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Ton exemple ne montre pas où sont <geo:lat> et <geo:long>.
    On va pas deviner
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 2
    Par défaut
    Petite erreur de ma part, c'est corrigé
    Désolé

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Le XPath pour sélectionner les latitude ou longitude, ce serait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ns1:adresseLocale/geo:lat
    Vu que le nœud contexte est <ns1:contact>, pas <ns1:adresseLocale>.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [débutant][URL] problème de chemin
    Par soulhouf dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 14/09/2005, 16h25
  2. [MFC]Problème de chemin de fichier
    Par benahpets dans le forum MFC
    Réponses: 3
    Dernier message: 06/09/2005, 13h07
  3. [XSLT] Problème de chemin d'accès + XSLT
    Par Jorus dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 15/09/2004, 08h36
  4. Réponses: 17
    Dernier message: 13/07/2004, 20h37
  5. [JSP] Include, problème de chemin relatif
    Par dafly dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 15/04/2004, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo