2017-03-23 9 views
1
At a school, there are many classes and the following elements are identified. 
  • 교장, 그는 모든 클래스는 담임
  • 각 클래스 교사는 다음과 같은 정보를 보유하고있어다음과 같은 XML의 DTD 오류를 제공

  • 이름, 나이, 주소가 가지고있다

    • Class_number
    • Teacher_Details
    • 한 접점 r_of_students
  • Teacher_details 섹션 문제는 내가 만든 위의 정보

에 대한 DTD 문서입니다 다음과 같은 정보

  • 에게 TEACHER_NAME
  • 생년월일

을 포함 XML과 DTD는 VS 2008을 사용합니다. 그러나 DTD의 첫 번째 줄에는 오류가 있습니다.

<!DOCTYPE school [ 
    <!ELEMENT school (principal|ClassTeacher)*> 
    <!ELEMENT principal (name,age,address)> 
    <!ELEMENT name (#PCDATA)> 
    <!ELEMENT age  (#PCDATA)> 
    <!ELEMENT address (#PCDATA)> 
    <!ELEMENT ClassTeacher (cno,td*,nos)> 
    <!ELEMENT cno (#PCDATA)> 
    <!ELEMENT td (name,dob)> 
    <!ELEMENT name (#PCDATA)> 
    <!ELEMENT dob (#PCDATA)> 
    <!ELEMENT nos (#PCDATA)> 
]> 

<school> 
    <principal> 
    <name>sdasd</name> 
    <age>456</age> 
    <address>jhkh</address> 
    </principal> 

    <ClassTeacher> 
    <cno>456</cno> 
    <td> 
     <name>gyj</name> 
     <dob>fgd</dob> 
    </td> 
    <nos>45</nos> 
    </ClassTeacher> 
</school> 

The DTD and XML with error in 1st line

답변

0

큰 문제

주요 문제는 두 번 name를 선언한다는 것입니다. 즉시 오류를 수정하려면 선언 중 하나를 제거하십시오.

추가 문제

<!ELEMENT school (principal|ClassTeacher)*> 

school 여러 principal 또는 여러 ClassTeacher 아이들 중 하나만을 가질 수 있습니다 의미 "요소 내용"선언의 "선택 목록"입니다. Element Type Declarations을 참조하십시오.

이것은 principalClassTeacher 요소 중 어떠한 번호 (0 포함) 다음의 첫 번째 요소 인 것을 필요

<!ELEMENT school (principal, ClassTeacher*)> 

보십시오.

+0

제안에 대해 동일한 오류가 있습니다 ... –

+0

@ S.Sakthybaalan 대답의 업데이트를 참조하십시오 –

+0

개선 없음 –