Wejście XML

Schemat XSD

Wynik walidacji

Czym jest walidacja XML XSD?

XSD (XML Schema Definition) pozwala zdefiniować oczekiwaną strukturę dokumentów XML. Zamiast sprawdzać tylko składnię, walidacja schematu weryfikuje, czy wymagane elementy istnieją i czy dokument odpowiada oczekiwanemu modelowi. Standardy są zdefiniowane przez W3C XML Schema.

Ta strona jest zaprojektowana do szybkich przepływów pracy deweloperów: wklej XML, wklej XSD, waliduj i sprawdź przejrzyste wyjście. Walidacja uruchamia się w przeglądarce. Jeśli potrzebujesz tylko sprawdzenia składni, użyj Walidatora XML. Aby najpierw sformatować, użyj Formatera XML.

Jak używać tego narzędzia

1

Dodaj XML i XSD

Wklej XML do lewego edytora i schemat XSD do środkowego edytora. Możesz wczytać plik XML lub zacząć od wbudowanego przykładu.

2

Uruchom walidację

Kliknij Waliduj, aby sprawdzić dopasowanie elementu głównego i wymaganych elementów podrzędnych z definicji sekwencji schematu.

3

Sprawdź i popraw

Przeczytaj raport wyników, popraw brakujące węzły i waliduj ponownie. Użyj Przeglądarki drzewa XML, jeśli chcesz najpierw sprawdzić zagnieżdżenie.

Typowe problemy walidacji XSD

Typowe błędy to błędna nazwa elementu głównego, brakujące wymagane elementy podrzędne i definicje schematu nieeksponujące globalnego elementu. Dla XML bogatego w przestrzenie nazw, zweryfikuj prefiksy i deklaracje przed walidacją. Jeśli Twój XML pochodzi z innego systemu, uruchom Narzędzie do porównywania diff XML względem znanego poprawnego przykładu.

Gdzie walidacja XSD jest przydatna

Sprawdzenia XSD są przydatne dla integracji API (ładunki SOAP/XML), kontraktów wiadomości telekomunikacyjnych i finansowych oraz walidacji konfiguracji korporacyjnej.

Przykład Walidacji

Przykład: XML produktu zwalidowany względem schematu XSD

Dokument XML:

<?xml version="1.0"?>
<product>
  <id>P001</id>
  <name>Widget Pro</name>
  <price>29.99</price>
</product>

Schemat XSD:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="product">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="id" type="xs:string"/>
        <xs:element name="name" type="xs:string"/>
        <xs:element name="price" type="xs:decimal"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Często zadawane pytania

Czy to zastępuje firmowe walidatory XML?

Nie całkowicie. To narzędzie koncentruje się na praktycznych sprawdzeniach do szybkiego debugowania. W przypadku pełnych ograniczeń typów danych/facetów użyj dedykowanych silników XSD.

Czy mój XML jest przesyłany gdziekolwiek?

Nie. Walidacja uruchamia się w przeglądarce. Żadna zawartość XML ani schematu nie jest wysyłana na serwer.

Czy mogę tu walidować przestrzenie nazw?

Podstawowe dopasowanie schematów jest obsługiwane w tym przepływie pracy. W przypadku zaawansowanych kontraktów przestrzeni nazw użyj specjalistycznych walidatorów po tym wstępnym sprawdzeniu.

Co się dzieje, gdy mój schemat nie ma elementu najwyższego poziomu?

Narzędzie zgłasza to jako nieprawidłowe, ponieważ dopasowanie główne wymaga co najmniej jednej globalnej deklaracji xs:element.

Czym różni się od walidacji składni XML?

Walidacja składni sprawdza tylko poprawność formy. Walidacja XSD sprawdza strukturę względem reguł schematu. Używaj obu dla najlepszych wyników.

Powiązane narzędzia

Odniesienia: W3C XML Schema, XSD 1.1, XML 1.0, MDN DOMParser.