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 :

[XSLT][XPath] XML utilisant plusieurs namespace


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut [XSLT][XPath] XML utilisant plusieurs namespace
    Bonjour,

    J'ai un fichier XML dans lequel j'utilise 3 espaces de nom:
    X
    Y
    Z
    le xml schema de chacun d'eux est local
    j'ai crée une page xslt pour transformer mon fichier xml->xml et je voulais extraire les toutes les balises avec préfixe Y.
    quand je fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xsl:value of select="//Y:blabla"
    ca ne marche pas
    quand j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    //log:bla1[@id=1]//child::node()[position()=2]/child::node()[position()=2]"
    il me renvoie la balise dont j'ai besoin sachant que la balise blabla se trouve en deuxieme position des fils de bla1

    j'ai essayé avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     //X:bla1 ca marche mais avec //Z:blablabla
    ca ne marche pas aussi
    Merci

  2. #2
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Par défaut
    tu vas devoir redéfinir des préfixes pour tes namespaces dans ton xslt et les utilisé dans tes xpath comme spécifié dans la FAQ


    Problème de transformation XSLT avec un document xml dont les balises sont dans un namespace particulier

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut
    effectivement , j'ai essayé de faire comme dans FAQ mais ça ne marche toujours pas , et quand j'affiche tous les éléments , les éléments de X Y et Z s'affichent

  4. #4
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Par défaut
    Est-ce que tu pourrais poster ton xml et ton xslt, ou au moins la partie qui pose problème s'il te plait ?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut

    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
     
    <xmlns:log="file:/C:/CHEMIN"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns:tm="file:/C:CHEMIN" 
    	xmlns:sp="file:/C:CHEMIN"
    	xsi:schemaLocation="file:/C:file:/C:CHEMIN  
            file:/C:file:/C:CHEMIN/logique.xsd"
    	file:/C:file:/C:CHEMIN/TimeML.xsd     
    	file:/C:file:/C:CHEMIN/SpatialML.xsd>
     
    <log:paragraphes id="1">
       <sp:PLACE id="p11" latLong="42.998276, -0.600321">
    	<sp:SIGNAL id="s12">604 m</sp:SIGNAL>
    	   <tm:TIMEX3 tid="t2" type="DURATION" value="PT15M"> 00h15         </tm:TIMEX3>
    	<log:sous_titre id="1">Francois Sarraillé</log:sous_titre>
       </sp:PLACE>
    	<log:para> Cet itinéraire utilise en première partie le chemin de <sp:PLACE id="p13" type="ROAD">St-Jacques de Compostelle</sp:PLACE> (<sp:PLACE id="p14" type="ROAD">GR 653</sp:PLACE>) jusqu'à <sp:PLACE id="p15" type="PPL">Accous</sp:PLACE> puis divers PR			balisés. Depuis la place de la <sp:PLACE id="p16" type="FAC" form="NOM">mairie</sp:PLACE> de	<sp:PLACE id="p18" type="PPL">Bedous</sp:PLACE>, 
    <sp:LINK id="l1" source="p16"	target="p18" linkType="IN"/>longer la façade sud de l'église pour accéder à une nouvelle place (remarquer le château à tourelles qui rappelle le souvenir de Pierre de Laclède fils				de Bedous, qui partit aux <sp:PLACE id="p19" type="CONTINENT"> Amériques </sp:PLACE> et fonda <sp:PLACE id="p20" type="PPLA">Saint-Louis</sp:PLACE> en <sp:PLACE id="p22"				> Louisiane </sp:PLACE> <sp:LINK id="l2" source="p20" target="p22" linkType="IN"/>). Contourner un fronton par la gauche et suivre une ruelle à l'est pour emprunter un chemin gravillonné entre deux murettes	de pierres. </log:para>
    </log:paragraphes>
    et voici mon XSLT qui marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <xsl:value-of
    									select="//log:paragraphes[@id=1]//child::node()[position()=2]/child::node()[position()=2]"/>
    mais moi je veux extraire toutes les balises de types spLACE et non pas que le deuxieme fils

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut
    en précisant que chemin est local se trouvant dans le même répertoire
    et que dans ma feuille xslt je veux faire un truc du genre <xsl:value of select="//spLACE" et que le chemin et la déclaration des xmlns dans la feuille xslt est déjà faite

    (j'utilise SpatialML et TimeML en local car j'ai téléchargé leur spécification en local , j'ai pas trouvé le chemin officiel

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM] Création tag XML avec plusieurs namespace URI
    Par Bobble dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 25/11/2010, 16h07
  2. Réponses: 1
    Dernier message: 30/05/2007, 20h12
  3. [xslt][xpath]Utilisation des attributs XML
    Par Little_flower dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 15/05/2007, 12h42
  4. [XSLT] un xml pour plusieurs xsl
    Par vodasan dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 29/09/2006, 11h44

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