XSD - Het <schema> -element
Het <schema>-element is het root-element van elk XML-schema.
Het <schema>-element
Het <schema> element is het root element van elk XML Schema:
<?xml version="1.0"?>
<xs:schema>
...
...
</xs:schema>
Het element <schema> kan enkele attributen bevatten. Een schemadeclaratie ziet er vaak ongeveer zo uit:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="https://www.w3schools.com"
xmlns="https://www.w3schools.com"
elementFormDefault="qualified">
...
...
</xs:schema>
Het volgende fragment:
xmlns:xs="http://www.w3.org/2001/XMLSchema"
geeft aan dat de elementen en gegevenstypen die in het schema worden gebruikt, afkomstig zijn uit de naamruimte "http://www.w3.org/2001/XMLSchema". Het specificeert ook dat de elementen en datatypes die afkomstig zijn uit de "http://www.w3.org/2001/XMLSchema" naamruimte moeten worden voorafgegaan door xs:
Dit fragment:
targetNamespace="https://www.w3schools.com"
geeft aan dat de elementen die door dit schema worden gedefinieerd (note, to, from, heading, body.) afkomstig zijn uit de naamruimte "https://www.w3schools.com".
Dit fragment:
xmlns="https://www.w3schools.com"
geeft aan dat de standaardnaamruimte "https://www.w3schools.com" is.
Dit fragment:
elementFormDefault="qualified"
geeft aan dat alle elementen die worden gebruikt door het XML-instantiedocument en die in dit schema zijn gedeclareerd, gekwalificeerd moeten zijn voor de naamruimte.
Verwijzen naar een schema in een XML-document
Dit XML-document heeft een verwijzing naar een XML Schema:
<?xml version="1.0"?>
<note xmlns="https://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.w3schools.com note.xsd">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Het volgende fragment:
xmlns="https://www.w3schools.com"
specificeert de standaard naamruimtedeclaratie. Deze verklaring vertelt de schemavalidator dat alle elementen die in dit XML-document worden gebruikt, zijn gedeclareerd in de naamruimte "https://www.w3schools.com".
Zodra u de XML Schema Instance-naamruimte beschikbaar heeft:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
u kunt het kenmerk schemaLocation gebruiken. Dit attribuut heeft twee waarden, gescheiden door een spatie. De eerste waarde is de naamruimte die moet worden gebruikt. De tweede waarde is de locatie van het XML-schema dat voor die naamruimte moet worden gebruikt:
xsi:schemaLocation="https://www.w3schools.com note.xsd"