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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   DTD design

[ Lists Home | Date Index | Thread Index ]
  • From: heiko.grussbach@crpht.lu
  • To: xml-dev@ic.ac.uk
  • Date: Wed, 22 Dec 1999 11:11:21 +0100

Hi,

I have the following problem, I want to define an element E that may
contain elements A,B,C. Order should be insignificant and A,B and C are all
optional. Furthermore, A,B and C may each be replaced by X.
The first example was simply like this:

<!ELEMENT E (
     ( A?, B? ) |
     ( B?, A? ) |
     ( A?, X? ) |
     ( B?, X? ) |
     ( X?, A? ) |
     ( X?, B? ) |
     ( X?, X? )
) >

My XML-editor (XMetal 1.2) reports an ambigous content model error. After carefully studying the appendix of the XML rec, and with some help
by the support of XMetaL , I came up with the following:

<!ELEMENT E (
     EMPTY |
     (A,(B|X)?) |
     (B,(A|X)?) |
     (X,(A|B|X)?)
)>

Is this the best solution?, What if there are more childs, like A,B,C,D etc. Wouldn't the DTD just explode?

Regards

Heiko Grussbach


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To unsubscribe, mailto:majordomo@ic.ac.uk the following message;
unsubscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)






 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS