[
Lists Home |
Date Index |
Thread Index
]
- From: Eric Bohlman <ebohlman@netcom.com>
- To: Jean Georges PERRIN <jgp@4js.com>
- Date: Fri, 18 Feb 2000 10:07:28 -0800 (PST)
On Fri, 18 Feb 2000, Jean Georges PERRIN wrote:
> Is it possible to have recursivity in XML Documents / DTD... Some parsers
> seem to like it, others not...
>
> Something like :
> <TOTO><TOTO>hello</TOTO><TOTO>world</TOTO></TOTO>
>
> <!ELEMENT TOTO ( #PCDATA | TOTO ) >
The problem you're having isn't with recursion (which is allowed), but
with the fact that a mixed content model (one that allows either #PCDATA
or elements) *must* take the form of an optional repeating group, e.g.
<!ELEMENT TOTO (#PCDATA | TOTO)*>
The reason for this restriction is that otherwise the parser can be easily
thrown off by whitespace; if you had written
<TOTO>
<TOTO>hello</TOTO>
<TOTO>world</TOTO>
</TOTO>
and were using your original declaration with an SGML parser, which
doesn't have that restriction, your document would in fact *not* be valid
because the line break and spaces after the first <TOTO> tag would match
#PCDATA and no further markup would be allowed in the element.
***************************************************************************
This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@xml.org&BODY=unsubscribe%20xml-dev
List archives are available at http://xml.org/archives/xml-dev/threads.html
***************************************************************************
|