최신 웹 개발 튜토리얼
 

DTD - 속성


DTD가에서, 속성은 ATTLIST 선언으로 선언됩니다.


속성 선언

속성 선언 구문은 다음과 같습니다

<!ATTLIST element-name attribute-name attribute-type attribute-value>

DTD example:

<!ATTLIST payment type CDATA "check">

XML example:

<payment type="check" />

attribute-type 다음 중 하나 일 수 있습니다 :

유형 기술
CDATA 값은 문자 데이터이며
( en1 | en2 |..) 값은 열거 된 목록에서 하나 여야합니다
ID 값은 고유 ID 인
IDREF 이 값은 다른 요소의 ID이다
IDREFS 이 값은 다른 ID의리스트 인
NMTOKEN 값은 유효한 XML 이름
NMTOKENS 값은 유효한 XML 이름의 목록입니다
ENTITY 값은 실체
ENTITIES 값은 엔티티의 목록
NOTATION 값은 표기의 이름
xml: 이 값은 미리 정의 된 XML 값

attribute-value 다음 중 하나 일 수 있습니다 :

설명
value 속성의 기본값
#REQUIRED 속성이 필요합니다
#IMPLIED 속성은 선택 사항입니다
#FIXED value 속성 값은 고정되어

기본 속성 값

DTD:
<!ELEMENT square EMPTY>
<!ATTLIST square width CDATA "0">

Valid XML:
<square width="100" />

위의 예에서 "square" 소자 A의 빈 요소로 정의되는 "width" 형 CDATA의 속성. 더 폭이 지정되지 않은 경우는 0의 디폴트 값을 갖는다.


#REQUIRED

통사론

<!ATTLIST element-name attribute-name attribute-type #REQUIRED>

DTD:
<!ATTLIST person number CDATA #REQUIRED>

Valid XML:
<person number="5677" />

Invalid XML:
<person />

당신이 디폴트 값에 대한 옵션이없는 경우 #REQUIRED 키워드를 사용하지만, 여전히 존재하는 속성을 강제로 할 수 있습니다.


#IMPLIED

통사론

<!ATTLIST element-name attribute-name attribute-type #IMPLIED>

DTD:
<!ATTLIST contact fax CDATA #IMPLIED>

Valid XML:
<contact fax="555-667788" />

Valid XML:
<contact />

이 속성을 포함하도록 저자를 강제하지 않으려면 #IMPLIED 키워드를 사용하여, 당신은 디폴트 값에 대한 옵션이 없습니다.


#결정된

통사론

<!ATTLIST element-name attribute-name attribute-type #FIXED "value">

DTD:
<!ATTLIST sender company CDATA #FIXED "Microsoft">

Valid XML:
<sender company="Microsoft" />

Invalid XML:
<sender company="w3ii" />

당신이 속성을 변경 저자을 허용하지 않고 고정 된 값을 할 때 #FIXED 키워드를 사용합니다. 저자가 다른 값을 포함하는 경우, XML 파서는 오류를 반환합니다.


열거 된 속성 값

통사론

<!ATTLIST element-name attribute-name (en1|en2|..) default-value>

DTD:
<!ATTLIST payment type (check|cash) "cash">

XML example:
<payment type="check" />
or
<payment type="cash" />

이 속성 값이 유효한 값의 고정 세트 중 하나가 될하고자 할 때 열거 속성 값을 사용합니다.