DevToys Web Pro iconDevToys Web ProBlog
Bewerten Sie uns:
Browser-Erweiterung ausprobieren:

XML-/XSD-Validator

Serverseitig

Beispiele

Validierungsergebnis

Validierung wird geladen...

XSD-Schema

  • XML-Dokument

  • Loading editor...
    Loading editor...
    Technische Details

    So funktioniert der XML-/XSD-Validator

    Was das Tool macht

    Dieser XML-XSD-Validator prüft XML-Dokumente serverseitig gegen XML-Schema-Definitionen. Das Tool validiert Struktur, Datentypen, Elementreihenfolge und Attributanforderungen, die in Ihrem Schema definiert sind. Wenn die Validierung fehlschlägt, meldet es spezifische Fehler mit Zeilen- und Spaltennummern, sofern verfügbar. Der Validator verarbeitet Namespaces, komplexe Typen, Sequenz-Constraints und Schema-Facets wie Pattern-Matching und Werteinschränkungen.

    Beispiel: Validierung eines Buchkatalogs

    Betrachten Sie dieses XSD-Schema, das verlangt, dass Bücher ganzzahlige IDs und dezimale Preise haben:

    <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>

    Ungültiges XML wie &lt;book id="abc"&gt;&lt;price&gt;not-a-number&lt;/price&gt;&lt;/book&gt;würde bei der Validierung mit Typ-Constraint-Fehlern sowohl für das ID-Attribut als auch für das price-Element fehlschlagen.

    Häufige Anwendungsfälle

    Entwicklerinnen und Entwickler nutzen XML-Schema-Validierung bei der Integration mit SOAP-APIs, beim Validieren von Konfigurationsdateien oder beim Verarbeiten von Datenaustauschformaten. Typische Szenarien sind das Validieren von API-Antworten gegen veröffentlichte Schemas, das Prüfen von Konfigurationsdateien vor dem Deployment und das Sicherstellen der Datenqualität in ETL-Pipelines. Der Validator ist besonders nützlich, um Typinkonsistenzen, fehlende Pflicht-Elemente und falsche Elementreihenfolgen zu erkennen, bevor Daten Produktionssysteme erreichen.

    Validierungs-Engine und Einschränkungen

    Dieses Tool verwendet libxml2 über das libxmljs-Node.js-Binding und bietet Konformität mit XML Schema 1.0. Der Validator verarbeitet Schemas aus Sicherheitsgründen vollständig serverseitig und ruft keine externen Ressourcen ab und löst keine netzwerkbasierten Imports auf. Die Verarbeitung externer Entities (XXE) ist aus Sicherheitsgründen deaktiviert. Schema-Includes und -Imports funktionieren nur, wenn alle referenzierten Schemas im Haupt-XSD-Inhalt bereitgestellt werden.

    • Netzwerkzugriff:Aus Sicherheitsgründen blockiert
    • Schema-Imports:Müssen inline sein, keine externe Auflösung
    • Externe Entities:Deaktiviert (XXE-Schutz)
    • Verarbeitungslimits:Es gelten angemessene Größenlimits

    Serverseitige vs. clientseitige Verarbeitung

    Clientseitige Prüfungen der XML-Wohlgeformtheit reichen für eine grundlegende Syntaxvalidierung aus. Für die XSD-Validierung ist jedoch eine spezialisierte Engine erforderlich, da Browser keine XML-Schema-Prozessoren enthalten. Serverseitige Validierung sorgt für konsistente Ergebnisse, verarbeitet komplexe Schemafunktionen wie Vererbung und Imports und bietet eine Sicherheitsisolation gegenüber potenziell bösartigem XML-Inhalt.