Zum Austausch von Daten zwischen Computersystemen wird die Auszeichnungssprache XML eingesetzt. Die Beschreibung von zulässigen Datenstrukturen und Dateninhalten in XML-Dokumenten erfolgt über XML-Schemas. Ein XML-Schema wird auch als XSD (XML-Schema-Definition) bezeichnet und mit der Endung ".xsd" gespeichert.
Konkret wird per XML-Schema beschrieben:
Mit Hilfe eines Parsers oder eines anderen XML-Tools kann ein XML-Dokument gegen ein Schema geprüft werden, also ob der XML-Datenstrom den Regeln des XML-Schemas entspricht. Man spricht von Wohlgeformtheit (allgemeine XML-Regeln eingehalten) und Gültigkeit (Regeln des XML-Schemas eingehalten).
<?xml version="1.0"?>
<Person Id="1">
<Name>
<Nachname>Kneller</Nachname>
<Vorname>Juergen</Vorname>
</Name>
<Anschrift>
<Strasse>Musterstrasse 1a</Strasse>
<Plz>12345</Plz>
<Ort>Musterstadt</Ort>
</Anschrift>
<Geburtstag>2000-12-31</Geburtstag>
</Person>
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Person">
<xs:complexType>
<xs:sequence>
<xs:element name="Name">
<xs:complexType>
<xs:sequence>
<xs:element name="Nachname" type="xs:string"/>
<xs:element name="Vorname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Anschrift">
<xs:complexType>
<xs:sequence>
<xs:element name="Strasse" type="xs:string"/>
<xs:element name="Plz" type="xs:int"/>
<xs:element name="Ort" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Geburtstag" type="xs:date"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:int"/>
</xs:complexType>
</xs:element>
</xs:schema>
Validieren/Testen einer XML-Datei gegen ein XML-Schema:
Bei validome.org können XML und XSD online getestet werden.
Alternativ bei tools.decisionsoft.com/schemaValidate.
Oder man nimmt ein kostenloses XML-Freeware- oder Sharewaretool ("XMLSPEAR"), Profis nutzen z.B. Sax-/Xerces-Parser.