je XML schéma, které popisuje strukturu XML dokumentu. Je alternativa k jinému popisu struktury XML - DTD.
XML schéma
- definuje místa v dokumentu, na kterých se mohou vyskytovat různé elementy
- definuje atributy
- definuje, které elementy jsou potomky jiných elementů
- definuje pořadí elementů
- definuje počty elementů
- definuje, zda element může být prázdný, nebo zda musí obsahovat text
- definuje datové typy elementů a jejich atributů
- definuje standardní hodnoty elementů a atributů
Použití XSD
- popisuje přípustný obsah dokumentu
- umožňuje kontrolovat správnost dat
- umožňuje pracovat s daty uloženými v databázi
- umožňuje konvertovat data mezi různými datovými typy
Příklad aplikace XSD na XML dokument
XML dokument:
<uzivatel uid="6541">
<jmeno>Jiří</jmeno>
<prijmeni>Novák</prijmeni>
<pocetDeti>5</pocetDeti>
</uzivatel>
XSD dokumentu:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="uzivatel">
<xs:complexType>
<xs:sequence>
<xs:element name="jmeno" type="xs:string"></xs:element>
<xs:element name="prijmeni" type="xs:string"></xs:element>
<xs:element name="pocetDeti" type="xs:integer"></xs:element>
</xs:sequence>
<xs:attribute name="uid" type="xs:integer"></xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>
Připojení XSD k dokumentu
<?xml version="1.0" encoding="UTF-8"?>
<uzivatel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="uzivatel.xsd"
uid="6541">
<jmeno>Jiří</jmeno>
<prijmeni>Novák</prijmeni>
<pocetDeti>5</pocetDeti>
</uzivatel>