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

XML/XSL et SOAP Discussion :

parser un XHTML bien formé (problème namespace)


Sujet :

XML/XSL et SOAP

  1. #1
    Membre éclairé Avatar de luta
    Inscrit en
    Novembre 2003
    Messages
    1 038
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 038
    Points : 786
    Points
    786
    Par défaut parser un XHTML bien formé (problème namespace)
    bonjour, j'ai produit un doc XHTML via TIDY...jusque là tout va bien

    le problème est que je parse ce fichier avec un XSL qui recherche tout d'abord l'élément body.
    Pour y arriver j'ai du supprimer dans la premiere ligne
    <html xmlns="http://www.w3.org/1999/xhtml">

    l attribut xmlns sinon cela ne fonctionne pas

    mes questions
    1/ pourquoi est ce que ça ne fonctionne pas si je ne vire pas cet attribut
    2/Comment faire pour que ça fonctionne sans effacer l'attribut

    Merci

  2. #2
    En attente de confirmation mail
    Inscrit en
    Avril 2002
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 52
    Points : 51
    Points
    51
    Par défaut
    Tu as essayé en reprenant le xsd "http://www.w3.org/1999/xhtml" en local et mettant le chemin local vers cette XSD dans ton XML. Il peut s'agir d'un problème de connection. Ce problème se produit avec WSAD.

  3. #3
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    c'est effectivement un problème de namespace. Il faut que dans ton XSLT tu trouves le moyen d'associer tes balises html, body... à l'URI "http://www.w3.org/1999/xhtml"

    La solution est simple et comporte deux points :
    1) Dans ton xsl:stylesheet, crée un préfixe que tu associes à l'URI ; exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <xsl:stylesheet 
      version="1.0" 
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      xmlns:xhtml="http://www.w3.org/1999/xhtml"
    >
    J'ai utilisé le préfixe xhtml, mais le choix est arbitraire ; j'aurais aussi bien pu prendre toto ou titi (pas conseillé).
    2) Utilise ce préfixe dans tes instructions XPath pour désigner les noeuds appartenant à ce namespace ; exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:apply-templates select="/xhtml:html/xhtml:body"/>

Discussions similaires

  1. [XHTML] [FORM] problème lors du chargement d'un formulaire
    Par NikoBe dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 04/02/2009, 14h12
  2. Un bien étrange problème avec mes namespaces
    Par zarbiman dans le forum C#
    Réponses: 5
    Dernier message: 03/03/2007, 18h59
  3. Réponses: 12
    Dernier message: 06/04/2005, 11h54
  4. [DTD][java]Verifier qu'un doc XML est bien formé
    Par bart64 dans le forum Valider
    Réponses: 3
    Dernier message: 08/01/2005, 14h17
  5. Réponses: 5
    Dernier message: 27/08/2003, 11h45

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