XMLスキーマの使用方法
XSD 使い方?
XML ドキュメントは DTD または XML スキーマを参照できます。
簡単な XML ドキュメント:
「note.xml」という名前のこの XML ドキュメントを見てください:
<?xml version="1.0"?>
<note>
<to>トーベ</to>
<from>ジャニ</from>
<Heading>リマインダー</Heading>
<body>今週末は私を忘れないでください!</body>
</note>
<note>
<to>トーベ</to>
<from>ジャニ</from>
<Heading>リマインダー</Heading>
<body>今週末は私を忘れないでください!</body>
</note>
DTD ファイル
次の例は、「note.dtd」という名前の DTD ファイルです。その XML ドキュメント ( "note.xml" ) は次のように定義されています:
<!ELEMENT note (to, from,Heading, body)>
<!ELEMENT to (#PCDATA)>
< from (#PCDATA)>
<!ELEMENT 見出し (#PCDATA)>
<!ELEMENT body (#PCDATA)>
<!ELEMENT to (#PCDATA)>
< from (#PCDATA)>
<!ELEMENT 見出し (#PCDATA)>
<!ELEMENT body (#PCDATA)>
1 行目は、note 要素に 4 つの子要素があることを定義しています: "to、from 、見出し、本文」。
2行目から5行目では、to、from、見出し、本文要素の型を「#PCDATA」として定義しています。
XML スキーマ
次の例は、「note.xsd」という名前の XML スキーマ ファイルで、上記の XML ドキュメント (「note.xml」) の要素を定義します。
<?xml version= "1.0 "?>
targetNamespace="http://www.w3schools.com"
xmlns="http :/ /www.w3schools.com"
elementFormDefault="qualified">
<xs:element name="note">
<xs:complexType>
<xs:シーケンス>
<xs:要素名="to" type="xs:string"/>
<xs:要素名="from" type="xs:string"/>
<xs:要素名="見出し" type="xs:文字列"/>
<xs:要素名="body" type="xs:string"/>
</xs:シーケンス>
</xs:complexType>
</xs:element>
</xs:schema>
xmlns="http :/ /www.w3schools.com"
elementFormDefault="qualified">
<xs:element name="note">
<xs:complexType>
<xs:シーケンス>
<xs:要素名="to" type="xs:string"/>
<xs:要素名="from" type="xs:string"/>
<xs:要素名="見出し" type="xs:文字列"/>
<xs:要素名="body" type="xs:string"/>
</xs:シーケンス>
</xs:complexType>
</xs:element>
</xs:schema>
note 要素は他の子要素を含むため、複合型です。他の要素 (to、from、見出し、本文) には他の要素が含まれていないため、単純型になります。複合型と単純型については、次の章で詳しく説明します。
DTD への参照
このファイルには、DTD への参照が含まれています:
<?xml version="1.0"?>
<!DOCTYPE note SYSTEM
"http://www.w3schools. com/dtd/note.dtd">
<note>
<to>トーベ</to>
<from>ジャニ</from>
<Heading>リマインダー</Heading>
<body>今週末は私を忘れないでください!</body>
</note>
<!DOCTYPE note SYSTEM
"http://www.w3schools. com/dtd/note.dtd">
<note>
<to>トーベ</to>
<from>ジャニ</from>
<Heading>リマインダー</Heading>
<body>今週末は私を忘れないでください!</body>
</note>
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>トーベ</to>
<from>ジャニ</from>
<Heading>リマインダー</Heading>
<body>今週末は私を忘れないでください!</body>
</note>
<note
xmlns="http://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "
xsi:schemaLocation="http://www.w3schools.com note.xsd">
<to>トーベ</to>
<from>ジャニ</from>
<Heading>リマインダー</Heading>
<body>今週末は私を忘れないでください!</body>
</note>