OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: DTD and Illegal Construct

Jim Shain wrote:

> I wanted to run this past some knowledgeable people.  Is the following a legal
> or illegal construct for an element in a DTD?
>  <!ELEMENT Request ((A, B, C?) | (A?, B, C?, D))>
> Some have stated that it is illegal because "When A is present it isn't possible
> to determine whether or not D is required."

Correct.  Here is a correct declaration that does what you want:

<!ELEMENT Request ((A, B, C?, D?) | (B, C?, D))>

There is / one art             || John Cowan <jcowan@reutershealth.com>
no more / no less              || http://www.reutershealth.com
to do / all things             || http://www.ccil.org/~cowan
with art- / lessness           \\ -- Piet Hein