XSD - <schema> 要素
<schema>要素は、全XMLスキーマのルート要素です。
<schema>要素
<schema>要素は、全XMLスキーマのルート要素です:
<?xml version="1.0"?>
<xs:schema> ...
...
</xs:schema> |
<schema>要素は、属性を含むことができます。 スキーマ宣言は、このようにします:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com"
xmlns="http://www.w3schools.com"
elementFormDefault="qualified"> ...
... </xs:schema> |
次の部分:
xmlns:xs="http://www.w3.org/2001/XMLSchema" |
は、スキーマで使われる要素とデータ型が "http://www.w3.org/2001/XMLSchema"名前空間からのものであることを示しています。
また、"http://www.w3.org/2001/XMLSchema" 名前空間から得られる要素とデータ型は、接頭辞xs:を付けなければならないことも示しています
この部分:
targetNamespace="http://www.w3schools.com" |
は、このスキーマで定義した要素(note, to, from, heading, body)が"http://www.w3schools.com"名前空間からのものであることを示しています。
この部分:
xmlns="http://www.w3schools.com" |
は、デフォルト名前空間が"http://www.w3schools.com"であることを示しています。
この部分:
elementFormDefault="qualified" |
は、このスキーマで宣言された、XMLインスタンス文書により使用されるすべての要素は、名前空間で修飾しなければならないことを示しています。
XML文書におけるスキーマ参照
このXML文書は、XMLスキーマを参照しています:
<?xml version="1.0"?>
<note xmlns="http://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3schools.com note.xsd">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note> |
次の部分:
xmlns="http://www.w3schools.com" |
は、デフォルトの名前空間宣言を指定しています。
このXML文書で使用されるすべての要素は、"http://www.w3schools.com"名前空間で宣言されていることをschema-validatorに知らせます。
一旦、利用可能なXMLスキーマインスタンス名前空間を持てば:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
schemaLocation属性を使うことができるようになります。
この属性は、スペースで区切られた 2 つの値を、持っています。最初の値は、使用する名前空間です。 2番目の値は、その名前空間に使用するXMスキーマの場所です:
xsi:schemaLocation="http://www.w3schools.com note.xsd" |
|