Validace XML: DTD, XSD, RELAX NG a Schematron

DTD, XSD, RELAX NG a Schematron řeší různé vrstvy validace. Vyber technologii podle požadavků příjemce a podpory v používaném validátoru.

Autor: Aktualizováno

Doporučený postup

Oddělit správnou syntax od platnosti dat a vybrat vhodný validátor.

  1. DTD — Začni deklarací struktury a povinných atributů.
  2. XSD — Přidej datové typy, namespace a vazby mezi hodnotami.
  3. Schematron — Ověř pravidla mezi údaji a přečti validační report.

U příkladů nejdříve porovnej očekávaný výsledek a potom vyzkoušej uvedený chybný vstup. Verzi procesoru a podporu schématu vybírej podle kapitoly.

Kapitoly sekce

  • XML Schema (XSD) Jak v XSD popsat elementy, atributy a datové typy, co jsou jednoduché a komplexní typy, omezení hodnot a jak XML dokument proti schématu validovat.
  • DTD Jak se v DTD zapisují elementy, atributy a entity, rozdíl mezi interní a externí DTD, omezení oproti XSD a bezpečnostní rizika externích entit.
  • RELAX NG RELAX NG popisuje povolenou strukturu XML pomocí vzorů. Hodí se i pro dokumenty se smíšeným obsahem; nabízí XML syntaxi RNG a kompaktní syntaxi RNC.
  • Schematron Schematron kontroluje tvrzení nad XML pomocí dotazů, obvykle XPath. Vedle XSD nebo RELAX NG ověří vztahy mezi hodnotami a pravidla konkrétního použití.
  • XML Catalogs XML katalog překládá veřejné identifikátory, systémové identifikátory a URI na jiné adresy. Umožňuje používat lokální kopie DTD a schémat místo síťového stahování.