Click to See Complete Forum and Search --> : Ok What's wrong with the DTD?


babochka
02-10-2005, 02:42 AM
To Life Immortal

I am a newbie at XML and I created a file.
It is located at http://ca.geocities.com/theosis333/26/groups.xml
I ran it throu a xml checker, but I dont understand the error messages.
It said I defined groups twice and something else I dont understand.


Thanks in advance for your help.

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!--Xara E. R. Pascha Th 10 February 2005
aim:horangi2a yim:babochka2a
groups.xml-->
<!DOCTYPE servants[
<!ELEMENT servants (group+)>
<!ELEMENT group (verse,level)+>
<!ELEMENT group (#PCDATA)>
<!ELEMENT verse (#PCDATA)>
<!ELEMENT level (#PCDATA)>
]>
<servants>
<group>Belief
<verse>Acts 10:43</verse><level>1</level>
<verse>John 1:12</verse><level>40</level>
<verse>John 3:36</verse><level>80</level>
<verse>Mark 9:23</verse><level>120</level>
</group>

<group>Blessings
<verse>Romans 12:14</verse><level>1</level>
<verse>Psalms 94:12</verse><level>46</level>
<verse>Psalms 32:1</verse><level>88</level>
<verse>Romans 4:8</verse><level>131</level>
</group>
</servants>



Peace and Long Life
Babochka

the tree
02-10-2005, 11:12 AM
Yep, you defined group twice:
<!ELEMENT group (verse,level)+>
<!ELEMENT group (#PCDATA)>Should have been: <!ELEMENT group (verse,level,#PCDATA)+>

babochka
02-11-2005, 09:29 AM
To Life Immortal

OK I went back and read tutorial XML site to try to fix the
problem. Came back with this:


<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!--Xara E. R. Pascha Fr 11 February 2005
aim:horangi2a yim:babochka2a
groups.xml-->
<!DOCTYPE servants[
<!ELEMENT servants (group+)>
<!ELEMENT group (name, (verse,level)+)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT verse (#PCDATA)>
<!ELEMENT level (#PCDATA)>
<!ATTLIST group number ID #REQUIRED>
]>
<servants>
<group number = "1">
<name>Belief</name>
<verse>Acts 10:43</verse><level>1</level>
<verse>John 1:12</verse><level>40</level>
<verse>John 3:36</verse><level>80</level>
<verse>Mark 9:23</verse><level>120</level>
</group>
<group number = "2">
<name>Blessings</name>
<verse>Romans 12:14</verse><level>1</level>
<verse>Psalms 94:12</verse><level>46</level>
<verse>Psalms 32:1</verse><level>88</level>
<verse>Romans 4:8</verse><level>131</level>
</group>
</servants>


Is there a way I can check this for well formed and valid?
Thanks in advance