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


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: Deterministic Content Models ?

[ Lists Home | Date Index | Thread Index ]
  • From: "Liam R. E. Quin" <liamquin@interlog.com>
  • To: "XML Developers' List" <xml-dev@ic.ac.uk>
  • Date: Sat, 12 Sep 1998 00:31:46 -0400 (EDT)

On Fri, 11 Sep 1998, Philippe Le Hégaret wrote:

>  Is (paragraph*)* a determinist content model ?
>  If yes, so I think (a+ | b)* is a deterministic content model too.

Yes, they both are.

The constraint in section 3.3.1 of the XML spec is
    it is an error if an element in the document can match more
    than one occurrence of an element type in the content model.

Hence, a content model can only be non-deterministic in the XML sense
if it has a name that repeats.  For example,
    (a*, a*)
is non-deterministic, because the input <a> could match either "a*" in
the content model.  In the same way,
    (a+, b?, a+)
is bad because <a><a> could match the first "a+" or the first a+,
a missing b between the two elements, and the second <a/> could match
the second a+ in the content model.

Non-terminals are not an issue, so in your example of
although either * could be matched, * is not an element, so this is
still deterministic.

It's generally easier to ignore this error than it is to check it.

I hope this helps.


Liam Quin, GroveWare Inc., Toronto;  The barefoot agitator
l i a m q u i n     at    i n t e r l o g    dot   c o m

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/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe 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