XML / XSD validators
Servera pusēParaugi
Validācijas rezultāts
XSD shēma
XML dokuments
Tehniskā informācija
Kā darbojas XML / XSD validators
Ko rīks dara
Šis XML XSD validators pārbauda XML dokumentus pret XML shēmu definīcijām, izmantojot servera puses apstrādi. Rīks validē struktūru, datu tipus, elementu secību un atribūtu prasības, kas definētas jūsu shēmā. Ja validācija neizdodas, tas ziņo par konkrētām kļūdām ar rindiņu un kolonnas numuriem, ja tie ir pieejami. Validators apstrādā vārdtelpas, kompleksos tipus, secību ierobežojumus un shēmas aspektus, piemēram, paraugu atbilstību un vērtību ierobežojumus.
Piemērs: grāmatu kataloga validācija
Apsveriet šo XSD shēmu, kas prasa, lai grāmatām būtu veselu skaitļu ID un decimālas cenas:
<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>Nederīgs XML, piemēram, <book id="abc"><price>not-a-number</price></book>would fail validation with type constraint errors for both the ID attribute and price element.
Biežākie lietošanas gadījumi
Izstrādātāji izmanto XML shēmu validāciju, integrējoties ar SOAP API, validējot konfigurācijas failus vai apstrādājot datu apmaiņas formātus. Bieži scenāriji ietver API atbilžu validēšanu pret publicētām shēmām, konfigurācijas failu pārbaudi pirms izvietošanas un datu kvalitātes nodrošināšanu ETL cauruļvados. Validators ir īpaši noderīgs, lai pamanītu tipu neatbilstības, trūkstošus obligātos elementus un nepareizu elementu secību, pirms dati nonāk produkcijas sistēmās.
Validācijas dzinējs un ierobežojumi
Šis rīks izmanto libxml2, izmantojot libxmljs Node.js sasaisti, nodrošinot atbilstību XML Schema 1.0. Validators apstrādā shēmas pilnībā servera pusē drošības nolūkos un neielādē ārējos resursus vai neatrisina tīkla importus. Ārējo entītiju apstrāde (XXE) drošības nolūkos ir atspējota. Shēmu include un import darbojas tikai tad, ja visas atsauktās shēmas ir iekļautas galvenajā XSD saturā.
- Piekļuve tīklam:Bloķēta drošības nolūkos
- Shēmu importi:Jābūt iekļautiem iekšēji, bez ārējas atrisināšanas
- Ārējās entītijas:Atspējotas (XXE aizsardzība)
- Apstrādes ierobežojumi:Piemēroti saprātīgi izmēra ierobežojumi
Servera puses un klienta puses apstrāde
Klienta puses XML pareizas noformētības pārbaudes ir pietiekamas pamata sintakses validācijai. Tomēr XSD validācijai ir nepieciešams specializēts dzinējs, jo pārlūkprogrammās nav iekļauti XML shēmu apstrādātāji. Servera puses validācija nodrošina konsekventus rezultātus, apstrādā sarežģītas shēmu iespējas, piemēram, mantošanu un importus, un nodrošina drošības izolāciju no potenciāli ļaunprātīga XML satura.