DTD(Document Type Definition)
Valid문서 : Well-formed + DTD에 부합.
구성
Document Type Declaration
<!DOCTYPE root[...]>
1. internal : [] 사이에 정의
2. external : SYSTEM(파일의 물리적 위치, URI가능), PUBLIC(Name, URI형태)
Element Declaration
문법 : <!ELEMENT 이름 내용모델>
내용모델(ContentModel)
A sequence of elements | (Element1, Element2, ...) | element들이 순서대로... |
A choice of element | (Element1| Element2, ...) | element 중 하나만 선택. |
Any value | ANY | 어떤 유형의 데이터 가능. |
No value | EMPTY | 요소나 텍스트를 포함X |
Plain Text | (#PCDATA) | 텍스트만 포함 |
Mixed Content | MIXED | 텍스트와 요소 결합된 형태 |
Cardinality : element가 나타나는 회수.
+ : 1번이상, ? : 0~1번, * : 0번이상
Grouping Elements : 괄호 안에 명세, 그룹에도 cardinality 가능.
Attribute Declaration
문법 : <!ATTRIBUTE Element이름 속성이름 형태 제약>
형태
CDATA : 문자타입
Enumerated : 문자 값들의 리스트
ID : Attribute 중 유일한 값
IDREF or IDREFS : ID 형태에 대한 참조
ENTITY or ENTITIES
NMTOKEN or NMTOKENS
제약
#REQUIRED : 반드시 나타나야함.
#iIMPLIED : 속성이 꼭 나타날 필요 없음.
"value" : 기본 값.
#FIXED : 속성 값이 상수.
Notation Declaration
Element나 entity는 XML이 아닌 형태의 데이터를 포함한다.
Entity Declaration
문법: <!ENTITY name 정의>
Generic : DTD의 정의(매크로)를 XML문서에서 사용한다.
Parameter : DTD의 정의(매크로)를 DTD 뒷부분에서 사용한다.
Well-formed XML문서 실습
'컴퓨터 공부 > XML' 카테고리의 다른 글
[5월 14일 3교시] XML schema 2 (0) | 2009.05.14 |
---|---|
[5월 14일 2교시] XML namespace + XML schema 1 (0) | 2009.05.14 |
[5월 14일 1교시] XML DTD 실습 (0) | 2009.05.14 |
[5월 13일 2교시] XML Core (0) | 2009.05.13 |
[5월 13일 1교시] XML소개 (0) | 2009.05.13 |