DevToys Web Pro iconDevToys Web ProBlog
I-rate kami:
Subukan ang browser extension:

Validator ng XML / XSD

Panig ng server

Mga Sample

Resulta ng Pag-validate

Ikinakarga ang pag-validate...

Iskema ng XSD

  • Dokumentong XML

  • Loading editor...
    Loading editor...
    Mga teknikal na detalye

    Paano Gumagana ang XML / XSD Validator

    Ano ang Ginagawa ng Tool

    Sinusuri ng XML XSD validator na ito ang mga XML document laban sa mga XML Schema definition gamit ang server-side na pagproseso. Vina-validate ng tool ang istruktura, mga uri ng data, pagkakasunod-sunod ng element, at mga kinakailangan sa attribute na tinukoy sa iyong schema. Kapag pumalya ang validation, nag-uulat ito ng mga partikular na error kasama ang mga line at column number kapag available. Hinahawakan ng validator ang mga namespace, complex type, sequence constraint, at mga schema facet tulad ng pattern matching at mga limitasyon sa value.

    Halimbawa: Pag-validate ng Book Catalog

    Isaalang-alang ang XSD schema na ito na nangangailangan na ang mga libro ay may integer na ID at decimal na presyo:

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

    Ang invalid na XML tulad ng &lt;book id="abc"&gt;&lt;price&gt;not-a-number&lt;/price&gt;&lt;/book&gt;ay babagsak sa validation na may mga type constraint error para sa parehong ID attribute at price element.

    Mga Karaniwang Use Case

    Gumagamit ang mga developer ng XML Schema validation kapag nag-iintegrate sa mga SOAP API, nagva-validate ng mga configuration file, o nagpoproseso ng mga format para sa data interchange. Kasama sa mga karaniwang senaryo ang pag-validate ng mga API response laban sa mga nailathalang schema, pag-check ng mga configuration file bago i-deploy, at pagtiyak ng kalidad ng data sa mga ETL pipeline. Lalo itong kapaki-pakinabang para mahuli ang mga type mismatch, nawawalang required na element, at maling pagkakasunod-sunod ng element bago makarating ang data sa mga production system.

    Validation Engine at mga Limitasyon

    Ginagamit ng tool na ito ang libxml2 sa pamamagitan ng libxmljs Node.js binding, na nagbibigay ng pagsunod sa XML Schema 1.0. Pinoproseso ng validator ang mga schema nang buo sa server-side para sa seguridad at hindi ito kumukuha ng mga external resource o nagre-resolve ng mga import na nakabatay sa network. Naka-disable ang external entity processing (XXE) para sa kaligtasan. Gumagana lamang ang schema include at import kung ang lahat ng tinutukoy na schema ay ibinigay sa pangunahing nilalaman ng XSD.

    • Network access:Hinarang para sa seguridad
    • Schema imports:Dapat inline, walang external resolution
    • External entities:Naka-disable (proteksyon sa XXE)
    • Processing limits:May naaangkop na mga limitasyon sa laki

    Pagproseso sa Server-side kumpara sa Client-side

    Sapat na ang mga client-side na pagsusuri ng pagiging well-formed ng XML para sa pangunahing pag-validate ng syntax. Gayunpaman, ang XSD validation ay nangangailangan ng espesyal na engine dahil walang kasamang XML Schema processors ang mga browser. Tinitiyak ng server-side validation ang pare-parehong resulta, hinahawakan ang mga kumplikadong feature ng schema tulad ng inheritance at imports, at nagbibigay ng security isolation laban sa posibleng mapaminsalang XML content.