XSD - <schema> element

<schema> element er rodlementet for hver XML Schema.

<schema> element

<schema> element er rodlementet for hver XML Schema:

<?xml version="1.0"?>
<xs:schema>
...
...
</xs:schema>

<schema> element kan indeholde egenskaber. En schema-deklaration ser ofte ud som dette:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
targetNamespace="http://www.codew3c.com"
xmlns="http://www.codew3c.com"
elementFormDefault="qualified">
...
...
</xs:schema>

Kodeforklaring:

Følgende fragment:

xmlns:xs="http://www.w3.org/2001/XMLSchema"

Viser elementer og datatyper brugt i schema kommer fra namespace "http://www.w3.org/2001/XMLSchema". Det bestemmer også, at elementer og datatyper fra namespace "http://www.w3.org/2001/XMLSchema" skal bruge præfikset xs:

Dette fragment:

targetNamespace="http://www.codew3c.com"

Viser elementer (note, to, from, heading, body) defineret af dette schema kommer fra namespace: "http://www.codew3c.com".

Dette fragment:

xmlns="http://www.codew3c.com"

Peger på, at standardnamespace er "http://www.codew3c.com".

Dette fragment:

elementFormDefault="qualified"

Peger på, at alle elementer, der bruges i nogen XML instance-dokumenter og er deklarerede i dette schema, skal være navnerum-begrænsede.

Refererer til Schema i XML-dokumentet

Dette XML-dokument indeholder referencer til XML Schema:

<?xml version="1.0"?>
<note xmlns="http://www.codew3c.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.codew3c.com note.xsd">
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>

Kodeforklaring:

Følgende fragment:

xmlns="http://www.codew3c.com"

Angiver standardnamespace-deklarationen. Denne deklaration informerer schema-verificeren, at alle elementer, der bruges i dette XML-dokument, er deklarerede i namespace "http://www.codew3c.com".

Når du har en tilgængelig XML Schema instance-namespace:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

Du kan bruge schemaLocation-egenskaben nu. Denne egenskab har to værdier. Den første værdi er den navngivne rum, der skal bruges. Den anden værdi er placeringen af XML schema, der bruges til navngivne rum:

xsi:schemaLocation="http://www.codew3c.com note.xsd"