Validátor XML / XSD
Na strane serveraVzorky
Výsledok overenia
Schéma XSD
Dokument XML
Technické podrobnosti
Ako funguje validátor XML / XSD
Čo nástroj robí
Tento validátor XML XSD kontroluje XML dokumenty voči definíciám XML Schema pomocou spracovania na strane servera. Nástroj validuje štruktúru, dátové typy, poradie elementov a požiadavky na atribúty definované vo vašej schéme. Keď validácia zlyhá, nahlási konkrétne chyby s číslami riadkov a stĺpcov, ak sú dostupné. Validátor spracúva namespaces, komplexné typy, obmedzenia sekvencií a facet-y schémy, ako je porovnávanie podľa vzoru a obmedzenia hodnôt.
Príklad: Validácia katalógu kníh
Zvážte túto schému XSD, ktorá vyžaduje, aby knihy mali celočíselné ID a desatinné ceny:
<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>Neplatné XML ako <book id="abc"><price>not-a-number</price></book>by neprešlo validáciou s chybami typových obmedzení pre atribút ID aj element price.
Bežné prípady použitia
Vývojári používajú validáciu XML Schema pri integrácii so SOAP API, validácii konfiguračných súborov alebo spracovaní formátov výmeny dát. Bežné scenáre zahŕňajú validáciu odpovedí API voči publikovaným schémam, kontrolu konfiguračných súborov pred nasadením a zabezpečenie kvality dát v ETL pipelineoch. Validátor je obzvlášť užitočný na zachytenie nesúladu typov, chýbajúcich povinných elementov a nesprávneho poradia elementov ešte predtým, než sa dáta dostanú do produkčných systémov.
Validačný engine a obmedzenia
Tento nástroj používa libxml2 cez Node.js väzbu libxmljs a poskytuje súlad s XML Schema 1.0. Validátor spracúva schémy kompletne na strane servera z bezpečnostných dôvodov a nenačítava externé zdroje ani nerieši importy založené na sieti. Spracovanie externých entít (XXE) je z bezpečnostných dôvodov vypnuté. Include a import schém fungujú iba vtedy, ak sú všetky odkazované schémy poskytnuté v hlavnom obsahu XSD.
- Prístup k sieti:Zablokované z bezpečnostných dôvodov
- Importy schém:Musia byť inline, bez externého rozlíšenia
- Externé entity:Vypnuté (ochrana XXE)
- Limity spracovania:Platia primerané limity veľkosti
Spracovanie na strane servera vs. na strane klienta
Kontroly správnej formovanosti XML na strane klienta postačujú na základné overenie syntaxe. Validácia XSD však vyžaduje špecializovaný engine, pretože prehliadače neobsahujú procesory XML Schema. Validácia na strane servera zabezpečuje konzistentné výsledky, zvláda komplexné funkcie schémy, ako je dedičnosť a importy, a poskytuje bezpečnostnú izoláciu od potenciálne škodlivého XML obsahu.