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 Notation


	A DTD content model is written like a mathematical equation.
If you have:

<!ELEMENT Item (ItemA, ItemB, ItemC*)>

This means that you are required to have 1 ItemA, 1 ItemB and
0 or more ItemC's.

If the content model is:

<!ELEMENT Item (ItemA, (ItemB, ItemC)*>

It means that you have to have one ItemA and 0 or more combinations
of ItemB and ItemC.

Hope this helps.


Betty Harvey                         | Phone: 410-787-9200 FAX: 9830 
Electronic Commerce Connection, Inc. |        
harvey@eccnet.com                    | Washington,DC SGML/XML Users Grp
URL:  http://www.eccnet.com          | http://www.eccnet.com/xmlug/

On Wed, 11 Jul 2001, Boyse, Jim wrote:

> Can someone help with a DTD notation question, please?
> I'm looking at a DTD furnished by an outside source.  In the DTD, most "optional repeating" elements are defined with an asterisk, for example, <!ELEMENT Test1 (ItemA, ItemB?, ItemC*)>.  But a few are defined with additional parentheses, for example, <!ELEMENT Test2 (ItemA, ItemB?, (ItemC)*)>.
> What's the difference between "ItemC*" and "(ItemC)*"?
> Thanks for any insight into this (subtlety | confusion) you can give.
> --Jim
>  James A. Boyse	
> Foremost Insurance Group                        E-Mail:	boyse@foremost.com
> P.O. Box 2450                                            Phone:	616/956-4150
> Grand Rapids, MI  49501-2450                  Fax:	616/956-4450