XML문서 검증을 위한 문법이 초기에는 DTD였다. DTD와 마찬가지로 XML 스키마도 XML 문서구조정의를 위해 이용됨

XML 문법을 따름

정해진 태그만 사용가능

root element ==> <schema>

형식 예
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="ENTER_NAME_OF_ROOT_ELEMENT_HERE">
		<xs:annotation>
			<xs:documentation>Comment describing your root element</xs:documentation>
		</xs:annotation>
	</xs:element>
</xs:schema>



예제:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">


	<!-- 자식요소가 있는 경우 -->
	<xs:element name="친구들">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="친구" minOccurs="1" maxOccurs="2" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>



	<!-- 자식요소와 속성이 있는 경우 -->
	<xs:element name="친구">
		<!-- 속성이나 하위요소가 있는 경우 omplexType 사용 -->
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="이름"/>
				<xs:element ref="나이"/>
				<xs:element ref="주소"/>
			</xs:sequence>
			<xs:attribute name="순번" type="xs:int" use="required" />
		</xs:complexType>		
	</xs:element>
	
	
	<!-- 자식요소가 없는 경우 -->
	<xs:element name="이름" type="xs:string"/>
	<xs:element name="나이" type="xs:int"/>
	<xs:element name="주소" type="xs:string"/>
</xs:schema>

위의 XSD(test.xsd)에 맞는(valid한) xml
<?xml version="1.0" encoding="UTF-8"?>
<친구들 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="test.xsd">
	<친구 순번="1">
		<이름>ddd</이름>
		<나이>11</나이>
	<주소>fff</주소>
	</친구>
	<친구 순번="3">
		<이름>kkk</이름>
		<나이>19</나이>
	<주소>KKJkjh</주소>
	</친구>
</친구들>
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2008-08-27 17:32:32
Processing time 0.0065 sec