알면 해당 XML 가 올바른 주어진 DTD 스크립트
-
13-11-2019 - |
문제
는 방법을 알게 될 것입니다 경우에는 XML 을 만들었음 규칙에 있는 내 DTD?
여기에 나 XML
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE HW SYSTEM "HW.dtd">
<A>
AA = "BAR"
AB = "FOO"
AC = "1"
<C>
<B/>
CA = "Name"
</C>
<D>Element</D>
</A>
그리고 여기 나 DTD
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT A (B* |C+,D)>
<ATTLIST A
AA CDATA #REQUIRED
AB CDATA #REQUIRED
AC(0|1|2) #REQUIRED
>
<!ELEMENT B EMPTY>
<!ATTLIST C(B)>
<!ATTLIST C
CA CDATA #REQUIRED
>
<!ELEMENT D (#PCDATA)>
나 XML 올바른지 DTD?
해결책
당신을 사용할 필요가 있는 XML 검사
온라인 버전이 http://www.xmlvalidation.com/, 많이 있는 도구가 이렇게도
에 따라 검사기에서,당신의 DTD 유효하지 않은
나는 시도를 해결하 DTD,여기에 고정 버전
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ELEMENT A (B* | (C+,D))>
<!ATTLIST A
AA CDATA #REQUIRED
AB CDATA #REQUIRED
AC (0|1|2) #REQUIRED
>
<!ELEMENT B EMPTY>
<!ELEMENT C EMPTY>
<!ATTLIST C
CA CDATA #REQUIRED
>
<!ELEMENT D (#PCDATA)>
문제 DTD 게재되었:
로 볼 수 당신이 필요 괄호 주변 C+,D 도 <ATTLIST
위 잘못되었으로 목록을 지정하의 특성 <!ATTLIST
참고!되었습니다.
또한 귀하의 DTD 했
<!ELEMENT B EMPTY>
<!ATTLIST C
CA CDATA #REQUIRED
>
지 못한 검사로 당신의 특성 목록에서 요 C <!ATTLIST C
그러나지 않았을 정의는 요소에서 C DTD,그러므로 내가 그것을 변경하기
<!ELEMENT C EMPTY>
<!ATTLIST C
CA CDATA #REQUIRED
>
이것은 당신의 유효한 DTD
또한 XML 은 잘못을에서 꽤 몇 가지 방법
예를 들어 당신의 DTD specifices
<!ATTLIST A
AA CDATA #REQUIRED
AB CDATA #REQUIRED
AC (0|1|2) #REQUIRED
>
을 의미하는 요소는 특성이 있어야 합 AA BB AC 그들이 필요한 AC 특성이 있어야 하 0 또는 1 또는 2
당신이 당신
<A>
AA = "BAR"
AB = "FOO"
AC = "1"
는지를 지정하 XML 특성 요소,속성을 지정해야
<A AA="BAR" AB="FOO" AC="1">
이는 당신이 당신의 숙제를 할 수 있도록
heres 링크 http://www.quackit.com/xml/tutorial/dtd_introduction.cfm 을 DTD 튜토리얼이 도움을 만들 XML 문서의 유효성을 검사하는 그것에 대하여
제휴하지 않습니다 StackOverflow