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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: [xml-dev] MSXML and the "<any>" tag in XML Schemas

[ Lists Home | Date Index | Thread Index ]

Chris,

I use xs:any a lot with MSXML, and find that the parser is very good at
reporting non-deterministic schemas that result from its incorrect use. This
is a good thing :-). Some other parsers do not report these errors, so you
might think that MSXML is wrong when it is not. I make it a rule to test all
schemas with MSXML for this reason.

That is the preliminary. These errors result from the parser not being able
to tell if an element should be parsed against the xs:any or some other part
of the content model. You are therefore playing safe(r) using
namespace="##other". However, this will not work if you reference an element
from some other namespace in your content model in a way that could still be
misconstrued. For example:

 <xs:element name="MyElement">
 	<xs:complexType>
 		<xs:sequence>
 			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
 			<xs:element ref="ns:SomeChildElement" minOccurs="1" maxOccurs="1"/>
 			<xs:element ref="SomeOtherChild"/>
 		</xs:sequence>
 	</xs:complexType>
 </xs:element>

You don't appear to be doing that, but then it looks as though you have
tailored your schema to post it here. Could it be something like that in
your real example? Either that, or I have missed something really obvious.

Regards

Paul Spencer

> -----Original Message-----
> From: Strolia-Davis Christopher Contr MSG/MAT
> [mailto:Christopher.Strolia-Davis@wpafb.af.mil]
> Sent: 10 December 2003 15:11
> To: xml-dev@lists.xml.org
> Subject: [xml-dev] MSXML and the "<any>" tag in XML Schemas
>
>
> Hi folks,
>
> I'm curious to see if anyone has seen this problem before, and if
> they have a fix.
>
> I am constrained to using MSXML2.4.0 for my XML schema validating needs.
>
> I am trying to make my schema extensible with the use of the
> "<any>" tag, but I keep getting an error that says that the
> schema is non-deterministic.
>
> I have tried using the namespace="##other" attribute of the
> "<any>" tag to try to prevent this, however, this does not seem to work.
>
> So far the only thing that seems to work is if I create an
> element, in which the "<any>" tag is the only child.
>
> If anyone has seen this problem before, and knows how to get
> around it, please let me know.
>
> ex.
>
> <xs:element name="MyElement">
> 	<xs:complexType>
> 		<xs:sequence>
> 			<xs:any namespace="##other" minOccurs="0"
> maxOccurs="unbounded"/>
> 			<xs:element ref="SomeChildElement"
> minOccurs="1" maxOccurs="1"/>
> 			<xs:element ref="SomeOtherChild"/>
> 		</xs:sequence>
> 	</xs:complexType>
> </xs:element>
>
> thanx in advance for your help.
>
> Chris Strolia-Davis
> Database Specialist
> Contractor - CDO Technologies Inc.
>
> -----------------------------------------------------------------
> 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>
>
>





 

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

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