XML/Walidacja dokumentów XML
Języki schematu XML (DTD, XSD, Relax NG)
[edytuj]Istnieje kilka języków schematów XML używanych do sprawdzania poprawności dokumentów XML. Trzy najczęstsze z nich to: Definicja typu dokumentu (DTD): Jest to prosty język schematu, który definiuje strukturę i typy danych dokumentu XML. DTD jest często używany w starszych systemach i jest obsługiwany przez większość parserów XML.
- Definicja schematu XML (XSD): Jest to bardziej wydajny i elastyczny język schematu, którego można używać do definiowania złożonych struktur danych, typów danych i ograniczeń. XSD jest szeroko stosowany i jest obsługiwany przez większość nowoczesnych parserów XML.
- Relax NG (RNG): To kolejny język schematów, który ma być prostszy i bardziej czytelny dla człowieka niż XSD. RNG obsługuje zarówno składnię XML, jak i składnię kompaktową.
Sprawdzanie poprawności XML za pomocą schematu
[edytuj]Aby sprawdzić poprawność dokumentu XML względem schematu, należy określić lokalizację schematu w dokumencie, a następnie uruchomić go za pomocą walidatora XML. Walidator sprawdzi, czy dokument jest dobrze sformułowany i zgodny z regułami schematu. Na przykład, aby sprawdzić poprawność dokumentu XML względem schematu XSD, można użyć narzędzia, takiego jak XML Schema Validator (XSV) lub narzędzia wiersza polecenia xmllint. Oto przykład sprawdzania poprawności dokumentu XML za pomocą XSV:
xsv --noout --schema schema.xsd document.xml
To polecenie sprawdzi poprawność pliku document.xml względem pliku schema.xsd i wydrukuje wszelkie błędy sprawdzania poprawności lub ostrzeżenia.
Zrozumienie błędów sprawdzania poprawności i ostrzeżeń
[edytuj]Podczas sprawdzania poprawności dokumentu XML względem schematu walidator może zgłaszać błędy lub ostrzeżenia sprawdzania poprawności. Błędy wskazują, że dokument nie jest zgodny z regułami schematu, a ostrzeżenia wskazują na potencjalne problemy, które mogą wpłynąć na zgodność dokumentu z innymi systemami. Niektóre typowe błędy sprawdzania poprawności obejmują:
- Nieprawidłowy element: dokument zawiera element, który nie jest dozwolony w schemacie.
- Brakujący element: W dokumencie brakuje wymaganego elementu.
- Nieprawidłowa wartość atrybutu: dokument zawiera wartość atrybutu, której nie ma