XML / XSD-validator
Server-sideVoorbeelden
Validatieresultaat
XSD-schema
XML-document
Technische details
Hoe de XML / XSD-validator werkt
Wat de tool doet
Deze XML XSD-validator controleert XML-documenten tegen XML Schema-definities met server-side verwerking. De tool valideert de structuur, datatypen, elementvolgorde en attribuutvereisten die in je schema zijn gedefinieerd. Wanneer validatie faalt, rapporteert hij specifieke fouten met regel- en kolomnummers wanneer beschikbaar. De validator verwerkt namespaces, complexe typen, sequence-constraints en schemafacetten zoals pattern matching en waardebeperkingen.
Voorbeeld: Validatie van boekcatalogus
Beschouw dit XSD-schema dat vereist dat boeken integer-ID’s en decimale prijzen hebben:
<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>Ongeldige XML zoals <book id="abc"><price>not-a-number</price></book>zou de validatie niet doorstaan met type-constraintfouten voor zowel het ID-attribuut als het price-element.
Veelvoorkomende use-cases
Ontwikkelaars gebruiken XML Schema-validatie bij integraties met SOAP-API’s, het valideren van configuratiebestanden of het verwerken van data-uitwisselingsformaten. Veelvoorkomende scenario’s zijn het valideren van API-responses tegen gepubliceerde schema’s, het controleren van configuratiebestanden vóór deployment en het waarborgen van datakwaliteit in ETL-pipelines. De validator is vooral nuttig om type-mismatches, ontbrekende verplichte elementen en onjuiste elementvolgorde te detecteren voordat data productiesystemen bereikt.
Validatie-engine en beperkingen
Deze tool gebruikt libxml2 via de libxmljs Node.js-binding en biedt XML Schema 1.0-compliance. De validator verwerkt schema’s volledig server-side voor beveiliging en haalt geen externe resources op en lost geen netwerkgebaseerde imports op. Verwerking van externe entiteiten (XXE) is uitgeschakeld voor de veiligheid. Schema-includes en -imports werken alleen als alle verwezen schema’s in de hoofd-XSD-content zijn opgenomen.
- Netwerktoegang:Geblokkeerd voor beveiliging
- Schema-imports:Moeten inline zijn, geen externe resolutie
- Externe entiteiten:Uitgeschakeld (XXE-bescherming)
- Verwerkingslimieten:Er gelden redelijke limieten voor de grootte
Server-side versus client-side verwerking
Client-side controles op XML-welgevormdheid zijn voldoende voor basisvalidatie van de syntaxis. XSD-validatie vereist echter een gespecialiseerde engine, omdat browsers geen XML Schema-processors bevatten. Server-side validatie zorgt voor consistente resultaten, ondersteunt complexe schemafuncties zoals overerving en imports, en biedt veiligheidsisolatie tegen mogelijk kwaadaardige XML-inhoud.