XSD - <schema>要素

<schema> 要素は、それぞれの XML Schema のルート要素です。

<schema> 要素

<schema> 要素は、それぞれの XML Schema のルート要素です:

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

<schema>要素は属性を含むことができます。schema 声明は通常、以下のように見えます:

<?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>

コードの説明:

以下のスライス:

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

schema で使用される要素とデータ型がネームスペース "http://www.w3.org/2001/XMLSchema" から来ています。同時に、ネームスペース "http://www.w3.org/2001/XMLSchema" からの要素とデータ型は、接頭辞 xs:を使用する必要があります。

以下のスライス:

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

この schema で定義された要素 (note, to, from, heading, body) がネームスペース: "http://www.codew3c.com" から来ています。

以下のスライス:

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

デフォルトのネームスペースは "http://www.codew3c.com" です。

以下のスライス:

elementFormDefault="qualified"

XML インスタンス文書で使用されるすべての要素が、この schema で宣言されていることを示す必要があります。

XML 文書内で Schema を参照する

この XML 文書には、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>ジョージ</to>
<from>ジョン</from>
<heading>リマインダー</heading>
<body>ミーティングを忘れないで!</body>
</note>

コードの説明:

以下のスライス:

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

デフォルトのネームスペースの宣言が規定されています。この宣言は、schema 驗証器に、この XML 文書で使用されるすべての要素が "http://www.codew3c.com" というネームスペースに宣言されていることを伝えます。

利用可能なXMLスキーマインスタンス名前空間を手に入れると、

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

schemaLocation属性を使用できます。この属性には2つの値があります。最初の値は使用する必要がある名前空間です。第二の値は名前空間に使用されるXMLスキーマの場所です:

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