DTD에 대해 유효한 문서가 있으면 DTD가 만족 스럽다고 말하면 만족스럽지 않은 DTD의 예가 있습니까?유효한 문서 인스턴스가없는 DTD의 예가 있습니까?
-1
A
답변
1
재미있는 질문 (OP의 초기 문제에도 불구하고 좋은 단어를 찾았음에도 불구하고).
답변 : 예, 유효한 인스턴스가없는 DTD가 있습니다. 여기 몇 가지 예가 있어요.
(1)이 DTD에는 유한 인스턴스가 없습니다. 요소 유형 e
의 각 인스턴스에는 요소 유형 e
의 다른 인스턴스가 필요합니다.
<!ELEMENT e (e) >
아래의 주석에서 알렉스가 DTD에서 무한 루프를 호출하는 예입니다.
(2)이 DTD에도 인스턴스가 없습니다. e
유형의 각 인스턴스는 문서의 ID를 참조하는 IDREF가 필요하지만 ID 유형의 속성은 선언되지 않으므로 가리킬 ID가 없습니다. 각 인스턴스는 f
요소가 필요하지만 f
요소는 선언되지 않은 :
<!ELEMENT e ANY >
<!ATTLIST e ref IDREF #REQUIRED >
(3)이 DTD는 유효한 인스턴스가 없습니다.
<!ELEMENT e (f) >
요소 선언이없는 DTD도 만족할 만하지 않습니다.
+0
이고 DTD에 무한 루프가있는 경우 해당 DTD에 XML이 부합하지 않습니다. . – alex
사실 XML 문서는 DTD를 따르며 다른 방법은 아닙니다. DTD는 "conforming"의 특정 의미가 규칙의 형태로 규정되어있는 곳이기 때문에 "conforming"이라고 할 수 없습니다. –
이것은 소스가 프로그래밍 언어를 준수하면 프로그램이 유효하다고 묻는 것과 같습니다. 유효하지 않은 프로그래밍 언어의 예가 있습니까? – slebetman
좋아요, DTD가 만족하는 문서가 있다면 만족 스럽습니다, 만족할만한 DTD 예제가 있습니까? – alex