Bei einem XML-Schema handelt es sich um eine XML-Datei mit der Dateinamenerweiterung XSD. Mithilfe eines
XML-Schemas wird die Struktur und der Typ von Daten definiert, die bzw. den ein XML-Dokument enthalten kann.
Das Schema gibt die Elemente (XML-Element: Eine XML-Struktur, die aus einem Starttag, einem Endtag und den Informationen zwischen den Tags besteht. Elemente können Attribute besitzen und andere Elemente enthalten.),
Attribute (XML-Attribut: Ein XML-Strukturkonstrukt. Ein Name/Wert-Paar, das durch ein Gleichheitszeichen getrennt und in einem mit Tags versehenen Element enthalten ist, das Features eines Elements ändert. Alle Attributwerte sind Textzeichenfolgen und müssen in Anführungszeichen stehen.) und Datentypen an, die in einem
XML-Dokument verwendet werden können, zusammen mit der zu befolgenden Struktur, damit das
XML-Dokument für dieses spezifische XML-Schema gültig ist.
Schemadateien verfügen über ein Stammelement mit dem Namen Schema, alle
Element-, Attribut- und Datentypdefinitionen sind im Schema geschachtelt.
Zudem kann das
XML-Schema zum Überprüfen der in den Elementen und Attributen enthaltenen Daten verwendet werden. Es folgt eine Liste mit Beispielen für Datenüberprüfungen, die durch ein XML-Schema ausgeführt werden können:
- Datentypen Steuert die Datentypen, die ein Element
oder Attribut enthalten kann. Beispiele sind die Werte string, Boolean, float, integer,
date und time.
- Einschränkende Facetten Platziert Grenzwerte im
Wertebereich von Datentypen. Beispiele sind die Werte length, pattern, enumeration,
minimum and maximum ranges und precision.
- Kardinalzahlen Steuert die Anzahl der zulässigen
Vorkommnisse. Beispiele sind die Werte one, zero or one, zero or more und one or
more.
- Auswahl Schränkt die Werte auf die in einer Liste enthaltenen Werte ein.
- Reihenfolge Definiert die Reihenfolge, in der Elemente
verwendet werden können.
- Standardwerte Stellt Werte bereit, die verwendet werden, wenn kein anderer Wert angegeben ist.
Der Namespace (Namespace: Ein Mechanismus, der Elementnamen und Beziehungen eindeutig bestimmt, um Namenskonflikte bei Elementen zu vermeiden, die denselben Namen haben, jedoch aus unterschiedlichen Quellen stammen.) für XML-Schemas lautet folgendermaßen:
xmlns:xsd="http://www.w3.org/2001/XMLSchema"