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"에서 왔음을 사용하는 요소와 데이터 타입은 prefix 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>George</to> <from>John</from> <heading>추억</heading> <body>미팅을 잊지 마세요!</body> </note>
코드 설명:
아래의 부분:
xmlns="http://www.codew3c.com"
기본 네임스페이스를 지정하는 선언이 있습니다. 이 선언은 schema 검증기에게 이 XML 문서에서 사용하는 모든 요소가 "http://www.codew3c.com" 이 네임스페이스에宣言되었다고 알립니다.
한 번 사용 가능한 XML Schema 인스턴스 네임스페이스를 가지면:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
이제 schemaLocation 속성을 사용할 수 있습니다. 이 속성은 두 가지 값이 있습니다. 첫 번째 값은 사용할 이름 공간입니다. 두 번째 값은 이름 공간을 사용하는 XML schema의 위치입니다:
xsi:schemaLocation="http://www.codew3c.com note.xsd"