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

Valider XML Discussion :

[XSD] Problème de validation d'un XSD suite à la mise à jour de PHP


Sujet :

Valider XML

  1. #1
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    156
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 156
    Points : 59
    Points
    59
    Par défaut [XSD] Problème de validation d'un XSD suite à la mise à jour de PHP
    Bonjour,

    Voulant mettre à jour ma version de PHP (vers la plus récente des 5.2, soit passer de la 5.2.8 à la 5.2.11 pour des raisons de sécurité), je me heurte à un souci de validation XSD de mon fichier xml en entrée.

    Je ne comprends pas l'erreur associée mais voici comment j'effectue la validation en PHP de mon entrée xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $xml = new DOMDocument(); 
    $xml->loadXML($str_xml);
    if (!$xml->validate($file_XSD)) 
    {
         libxml_display_errors();
         Throw new Exception($err);
    }
    Et l'erreur affichée vaut :

    Error 1824: Element '{http://www.w3.org/2000/09/xmldsig#}Reference', attribute 'URI': '#xpointer(//*[@authenticate='true'])' is not a valid value of the atomic type 'xs:anyURI'. on line 23
    Pourriez-vous m'éclairer quant à cette erreur ? Merci d'avance !

  2. #2
    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,

    dans ton XSD l'attribut URI de l'élément Reference est déclaré comme étant de type xs:anyURI, type pour lequel une expression XPointer telle que #xpointer(//*[@authenticate='true']) est considérée invalide par le validateur de schéma (ce n'est pas une URI correcte). Donc, de deux choses l'une : soit tu modifies ton fichier XML, soit tu modifies le schéma en choisissant un type pour l'attribut URI qui soit plus permissif, comme xs:string par exemple.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  3. #3
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    156
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 156
    Points : 59
    Points
    59
    Par défaut
    Merci pour cette réponse, le problème est résolu.

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

Discussions similaires

  1. Problème suite aux mises à jour ?
    Par MortDansLAme dans le forum Windows 7
    Réponses: 6
    Dernier message: 25/12/2009, 20h34
  2. [XSD] Problème de validation avec espace de noms
    Par tchize_ dans le forum Valider
    Réponses: 16
    Dernier message: 09/06/2009, 13h24
  3. [Oracle] Catchable fatal error: (suite à une mise à jour en PHP 5.2)
    Par nyto-86 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 05/06/2008, 11h53
  4. Réponses: 1
    Dernier message: 14/02/2007, 08h14
  5. [XSD] problème de validation
    Par anitshka dans le forum Valider
    Réponses: 1
    Dernier message: 23/11/2006, 12h38

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