DevToys Web Pro iconDevToys Web ProBlog
Évaluez-nous :
Essayez l’extension de navigateur :

Validateur XML / XSD

Côté serveur

Exemples

Résultat de la validation

Chargement de la validation...

Schéma XSD

  • Document XML

  • Loading editor...
    Loading editor...
    Détails techniques

    Comment fonctionne le validateur XML / XSD

    Ce que fait l’outil

    Ce validateur XML XSD vérifie les documents XML par rapport à des définitions de schéma XML à l’aide d’un traitement côté serveur. L’outil valide la structure, les types de données, l’ordre des éléments et les exigences d’attributs définis dans votre schéma. Lorsque la validation échoue, il signale des erreurs spécifiques avec des numéros de ligne et de colonne lorsque disponibles. Le validateur gère les espaces de noms, les types complexes, les contraintes de séquence et les facettes de schéma telles que la correspondance de motifs et les restrictions de valeur.

    Exemple : validation d’un catalogue de livres

    Considérez ce schéma XSD exigeant que les livres aient des ID entiers et des prix décimaux :

    <xs:element name="book">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="title" type="xs:string"/>
                <xs:element name="price" type="xs:decimal"/>
              </xs:sequence>
              <xs:attribute name="id" type="xs:integer" use="required"/>
            </xs:complexType>
          </xs:element>

    Un XML invalide comme &lt;book id="abc"&gt;&lt;price&gt;not-a-number&lt;/price&gt;&lt;/book&gt;échouerait à la validation avec des erreurs de contrainte de type à la fois pour l’attribut ID et l’élément price.

    Cas d’usage courants

    Les développeurs utilisent la validation de schéma XML lors de l’intégration avec des API SOAP, de la validation de fichiers de configuration ou du traitement de formats d’échange de données. Les scénarios courants incluent la validation de réponses d’API par rapport à des schémas publiés, la vérification de fichiers de configuration avant déploiement et l’assurance de la qualité des données dans des pipelines ETL. Le validateur est particulièrement utile pour détecter les incompatibilités de type, les éléments requis manquants et un ordre d’éléments incorrect avant que les données n’atteignent les systèmes de production.

    Moteur de validation et limitations

    Cet outil utilise libxml2 via le binding Node.js libxmljs, offrant une conformité à XML Schema 1.0. Le validateur traite les schémas entièrement côté serveur pour des raisons de sécurité et ne récupère pas de ressources externes ni ne résout d’importations basées sur le réseau. Le traitement des entités externes (XXE) est désactivé par sécurité. Les inclusions et importations de schéma ne fonctionnent que si tous les schémas référencés sont fournis dans le contenu XSD principal.

    • Accès réseau :Bloqué pour des raisons de sécurité
    • Importations de schéma :Doivent être intégrées, aucune résolution externe
    • Entités externes :Désactivées (protection XXE)
    • Limites de traitement :Des limites de taille raisonnables s’appliquent

    Traitement côté serveur vs côté client

    Les vérifications de bonne formation XML côté client suffisent pour une validation de syntaxe de base. Cependant, la validation XSD nécessite un moteur spécialisé, car les navigateurs n’intègrent pas de processeurs de schéma XML. La validation côté serveur garantit des résultats cohérents, gère des fonctionnalités de schéma complexes comme l’héritage et les imports, et offre une isolation de sécurité face à du contenu XML potentiellement malveillant.