Validation은 XML 파서에 의해 두가지로 수행됩니다.
- Well-formed XML document
 - Valid XML document
 
Well-formed XML document
아래의 조건을 잘 지켰다면 well-formed document라고 합니다.
- Non DTD XML 파일은 amp(&), apos(single quote), gt(>), lt(<), quot(double quote)에 대해 predefined character entity를 사용해야 합니다.
 - 태그를 열고 닫는 순서를 잘 지켜야 합니다.
 - 모든 오프닝 태그는 각자 end 태그를 가져야 하고, 그렇지 않으면 self-ending 태그여야 합니다.(<title>....</title> or <title/>)
 - start 태그에는 하나의 attribute만 있어야 하고, 따옴표가 있어야 합니다.
 - amp(&), apos(single quote), gt(>), lt(<), quot(double quote) 이외의 entity는 선언되어야 합니다.
 
Example
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
<!DOCTYPE address 
[ 
   <!ELEMENT address (name,company,phone)> 
   <!ELEMENT name (#PCDATA)> 
   <!ELEMENT company (#PCDATA)> 
   <!ELEMENT phone (#PCDATA)> 
]> 
<address> 
   <name>Tanmay Patil</name> 
   <company>TutorialsPoint</company> 
   <phone>(011) 123-4567</phone> 
</address> 
 | cs | 
위의 예가 well-formed인 이유는
- Document 타입을 정의했습니다. 여기서 document 타입은 element형입니다.
 - address라는 루트 element가 존재합니다.
 - Child element인 name, company, phone이 각자 설명 태그(explanatory tag)를 가지고 있습니다.
 - 태그의 순서가 잘 지켜졌습니다.
 
댓글 없음:
댓글 쓰기