كيفية استخدام XSD؟

يمكن للوثيقة XML أن تُقوم بالإشارة إلى DTD أو XML Schema.

مثال بسيط لـ XML

انظر إلى الوثيقة XML المُدعى "note.xml":

<?xml version="1.0"?>
<note>
<to>جورج</to>
<from>جون</from>
<heading>تذكير</heading>
<body>لا تنسى الاجتماع!</body>
</note>

ملف DTD

هذا المثال التالي هو ملف DTD يُدعى "note.dtd"، ويحدد العناصر في الوثيقة XML السابقة:

<!ELEMENT note (to, from, heading, body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>

السطر الأول يحدد عنصر note بـ أربعة عناصر فرعية: "to, from, heading, body".

السطور 2-5 تعرف أنواع عناصر to, from, heading, body هي "#PCDATA".

نموذج XML

هذا المثال هو ملف XML Schema المسمى "note.xsd"، ويحدد العناصر في الوثيقة XML السابقة:

<?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:element name="note">
    <xs:complexType>
      <xs:sequence>
	<xs:element name="to" type="xs:string"/>
	<xs:element name="from" type="xs:string"/>
	<xs:element name="heading" type="xs:string"/>
	<xs:element name="body" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
</xs:element>
</xs:schema>

يعد عنصر note نوعًا مركبًا لأنه يحتوي على عناصر فرعية أخرى. العناصر الأخرى (to, from, heading, body) هي أنواع بسيطة لأنها لا تحتوي على عناصر أخرى. ستعلم الكثير عن أنواع المركبة وأنواع البسيطة في الفصول القادمة.

إشارات إلى DTD

هذا الملف يحتوي على إشارات إلى DTD:

<?xml version="1.0"?>
<!DOCTYPE note SYSTEM "http://www.codew3c.com/dtd/note.dtd">
<note>
<to>جورج</to>
<from>جون</from>
<heading>تذكير</heading>
<body>لا تنسى الاجتماع!</body>
</note>

إشارات إلى XML Schema

هذا الملف يحتوي على إشارات إلى 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>