W3C home > Mailing lists > Public > xmlschema-dev@w3.org > May 2006

Question of reports of non-determinism

From: G. Ken Holman <gkholman@CraneSoftwrights.com>
Date: Thu, 18 May 2006 09:35:26 +0200
Message-Id: <>
To: xmlschema-dev@w3.org

Hello all,

Below is transcript of an extended example from our work in UBL:


I've been using xjparse invoking Xerces in order to test examples and 
experiments for the TC.

In the example below, I have modeled an extension point named 
LineItemExtension into which I wish to allow child elements from any 
other namespace and from no namespace.

I am informed that some tools (not Xerces below) report that ##other 
conflicts with ##local in that it is non-deterministic.  Yet if I 
take out ##local the example below fails in Xerces because I've 
included an element in no namespace, so Xerces is implementing "other 
namespace" as "other non-null namespace", while the other tools are 
implementing "other namespace" as "other namespace including no namespace".

Does ##other imply ##local or does ##other require there be a target 
namespace that is different in the particle?  If ##other implies 
##local then Xerces is wrong ... otherwise these other tools are wrong.

I'm looking to advise the TC correctly in this matter, so any help 
would be greatly appreciated.


. . . . . . . . . Ken

t:\fraser>type exublorder2.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
   <xs:element name="Order">
         <xs:element ref="u:OrderNumber"/>
         <xs:element maxOccurs="unbounded" ref="u:LineItem"/>
         <xs:element ref="u:TotalAmount"/>
   <xs:element name="OrderNumber" type="xs:string"/>
   <xs:element name="LineItem">
         <xs:element ref="u:Description"/>
         <xs:element ref="u:PriceAmount"/>
         <xs:element minOccurs="0" ref="u:LineItemExtension"/>
   <xs:element name="Description" type="xs:string"/>
   <xs:element name="PriceAmount" type="xs:string"/>
   <xs:element name="LineItemExtension" type="u:any-non-UBL"/>
   <xs:element name="TotalAmount" type="xs:string"/>
   <xs:complexType name="any-non-UBL">
     <xs:choice minOccurs="0" maxOccurs="unbounded">
       <xs:any namespace="##other" processContents="skip" 
minOccurs="0" maxOccurs="unbounded"/>
       <xs:any namespace="##local" processContents="skip" 
minOccurs="0" maxOccurs="unbounded"/>

t:\fraser>type exaeroorder2.xml
<?xml version="1.0" encoding="utf-8"?>
<Order xmlns="urn:oasis:names:draft:ubl:schema:xsd:Order-2"
     <Description>747 Repair Kit</Description>
           <a:Description>Starboard wing</a:Description>
           <a:Description>Port wing</a:Description>
     <Description>DC3 Repair Kit</Description>
           <a:Description>Rubber band</a:Description>
       <hello xmlns="">
t:\fraser>xjparse -S exublorder2.xsd exaeroorder2.xml
No validation errors.

Registration open for XSLT/XSL-FO training: Wash.,DC 2006-06-12/16
Also for XSL-FO/XSLT training:    Minneapolis, MN 2006-07-31/08-04
Also for XML/XSLT/XSL-FO/UBL training: Varo,Denmark 06-09-25/10-06
World-wide corporate, govt. & user group UBL, XSL, & XML training.
G. Ken Holman                 mailto:gkholman@CraneSoftwrights.com
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/x/
Box 266, Kars, Ontario CANADA K0A-2E0    +1(613)489-0999 (F:-0995)
Male Cancer Awareness Aug'05  http://www.CraneSoftwrights.com/x/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal
Received on Thursday, 18 May 2006 07:36:53 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 14:56:10 UTC