[
Lists Home |
Date Index |
Thread Index
]
the example of <publication> is not correct because type is an attribute for
<publication> element not thr data type!
-----Original Message-----
From: Andrzej Jan Taramina [mailto:andrzej@chaeron.com]
Sent: Wednesday, January 30, 2002 12:42 PM
To: xml-dev@lists.xml.org
Subject: [xml-dev] Non-deterministic schema issue....
This exchange came up on a different newsgroup. Anyone
know what the correct answer is?
Thanks...
....Andrzej
--------------------------------
> > > MSXML4 is complaining about the schema below, saying that it is
> > > non-deterministic - i cant work out precisely why.
> >
> > > <xsd:sequence>
> > > <xsd:element name="characteristic" type="chartype1"
> > > maxOccurs="unbounded"/>
> > > <xsd:element name="characteristic" type="chartype2"
> > > maxOccurs="unbounded"/>
> > > <xsd:element name="characteristic" type="chartype3"
minOccurs="0"
> > > maxOccurs="unbounded"/>
> > > <xsd:element name="characteristic" type="chartype4"
> > > maxOccurs="unbounded"/>
> > > </xsd:sequence>
> >
> > The problem is probably because of the minOccurs=0 on the third
> > element. There is no way to know if the third element in such a
> > sequence is of type 3 or 4 without doing a read-ahead of it's child
> > elements. I don't think that Parsers read-ahead typically.
>
> But the minOccurs shouldnt be causing a problem. For starters, if we get
rid
> of the minOccurs, the parser still complains. Are you saying that a schema
> enforcing the instance below would be non-deterministic because all the
> elements in the sequence have the same name?
>
> <library>
> <publication type="journal">...</publication>
> <publication type="journal">...</publication>
> <publication type="journal">...</publication>
> <publication type="hardback"/>...</publication>
> <publication type="book"/>...</publication>
> <publication type="book"/>...</publication>
> <publication type="book"/>...</publication>
> <publication type="book"/>...</publication>
> <publication type="reference"/>...</publication>
> <publication type="misc"/>...</publication>
> <publication type="misc"/>...</publication>
> </library>
>
>
> How else do you get around this? Giving each element a unique name would
be
> a little silly, especially when there could be hundreds of them. besides..
> if you then wanted to transform the XML into some HTML (as i do).. it
would
> be much trickier.
Andrzej Jan Taramina
Chaeron Corporation: Enterprise System Solutions
http://www.chaeron.com
-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
initiative of OASIS <http://www.oasis-open.org>
The list archives are at http://lists.xml.org/archives/xml-dev/
To subscribe or unsubscribe from this list use the subscription
manager: <http://lists.xml.org/ob/adm.pl>
|