[Home] [By Thread] [By Date] [Recent Entries]

  • To: "XML-Dev Mailing list" <xml-dev@l...>
  • Subject: Re: Re: [ubl-dev] UBL 2.0 and Schema Extensibility
  • From: "Fraser Goffin" <goffinf@g...>
  • Date: Tue, 23 May 2006 12:00:57 +0100
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=googlemail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=O2oPv3Wr1Yz+R3V5FgQBbDZZmTFgl8FzVhMoXvS4/4FaeEdVvqXtvr0e8J3QqFUtvTR57csdrCJmDSTj33UaQEd5INaQtUMcr8+9pWxlak8nGs/yHMYffxMv8BI0eSltjUfMpDwAAo/fZM/yzrVS56LfKzzCpbAPL00wnTQlMBE=
  • In-reply-to: <3bb44c6e0605230248x9a85609t90581b3f4481cbca@m...>
  • References: <20060516065830.dc066b1d4d2e0a1a65719ae85a8071e6.0fcf613037.wbe@e...> <7.0.1.0.2.20060516162109.02b94fb8@C...> <7.0.1.0.2.20060516170319.02b99a00@C...> <88aed1ea0605160925x3be76eafv41ec6b632f01f47f@m...> <7.0.1.0.2.20060516184750.02b6d510@C...> <88aed1ea0605161412n7e447227yd78f3a049e99c43@m...> <7.0.1.0.2.20060516234601.02a528e8@C...> <88aed1ea0605171620p7749c1f5o91b00215ad09ea52@m...> <7.0.1.0.2.20060523102129.03502dd0@C...> <3bb44c6e0605230248x9a85609t90581b3f4481cbca@m...>

> Basically it seems to me that the question as to whether it is
> nondeterministic revolves on whether local is within other,

Quoting from 'Essential XML Quick Reference - Skonnard/Gudgin' when
describing the xs:any namespace attribute value :-

'.. The value of this attribute is either the string ##any, the string
##other, or a list of namespace URIs, and/or the string
##targetNamespace and/or the string ##local.'

Hence it is not legal to include both of them on a single xs:any. E.g.
this is not legal AFAIK :-

<xs:any namespace="##other ##local" minOccurs="0"/>

The example shown that uses both ##other and ##local in a content
model has a element in-between that removes UPA (plus the first xs:any
has minOccurs='1' and maxOccurs='1') :-

<xs:complexType name="AjarPerson">
  <xs:sequence>
    <xs:any namespace="##local" processContents="lax" minOccurs="1"/>
    <xs:element name="name" type="xs:string"/>
    <xs:any namespace="##other" processContents="lax"
                                                  maxOccurs="unbounded"/>
  </xs:sequence>
</xs:complexType>

Fraser.

On 23/05/06, bryan rasmussen <rasmussen.bryan@g...> wrote:
> Basically it seems to me that the question as to whether it is
> nondeterministic revolves on whether local is within other, I would
> say no since I would like it to be explicitly stated that it is in the
> spec. and it does not seem to be in anywhere that I've looked.
>
> However the other question there is, should one be checking if it is
> nondeterministic if one is required to skip all parts that could be
> non-deterministic.
>
> Cheers,
> Bryan
>
> On 5/23/06, G. Ken Holman <gkholman@c...> wrote:
> > At 2006-05-18 00:20 +0100, Fraser Goffin wrote:
> > >The example schema fragment that you pointed at :-
> > >
> > >     <xs:choice minOccurs="0" maxOccurs="unbounded">
> > >       <xs:any namespace="##other" processContents="skip"/>
> > >       <xs:any namespace="##local" processContents="skip"/>
> > >     </xs:choice>
> > >
> > >looks OK, but XML Spy and MSXML 4 report it as non deterministic ?
> >
> > Below is the post that I made last week to the W3C Schema mail list
> > ... I still have not seen any response to the post, so I still do not
> > know the answer to the question.
> >
> > The UBL TC is meeting face-to-face this week so we need help as soon
> > as possible ... I hoping that someone on the UBL-Dev or XML-Dev list
> > might offer comments on the situation described below.
> >
> > Thanks again for bringing this up!
> >
> > . . . . . . . . . . . . . Ken
> >
> > Date: Thu, 18 May 2006 09:35:26 +0200
> > To: xmlschema-dev@w...
> > From: "G. Ken Holman" <gkholman@C...>
> > Subject: Question of reports of non-determinism
> >
> > Hello all,
> >
> > Below is transcript of an extended example from our work in UBL:
> >
> >    http://www.oasis-open.org/archives/ubl/200604/msg00013.html
> >
> > 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.
> >
> > Thanks!
> >
> > . . . . . . . . . Ken
> >
> > t:\fraser>type exublorder2.xsd
> > <?xml version="1.0" encoding="UTF-8"?>
> > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
> > elementFormDefault="qualified"
> > targetNamespace="urn:oasis:names:draft:ubl:schema:xsd:Order-2"
> > xmlns:u="urn:oasis:names:draft:ubl:schema:xsd:Order-2">
> >    <xs:element name="Order">
> >      <xs:complexType>
> >        <xs:sequence>
> >          <xs:element ref="u:OrderNumber"/>
> >          <xs:element maxOccurs="unbounded" ref="u:LineItem"/>
> >          <xs:element ref="u:TotalAmount"/>
> >        </xs:sequence>
> >      </xs:complexType>
> >    </xs:element>
> >    <xs:element name="OrderNumber" type="xs:string"/>
> >    <xs:element name="LineItem">
> >      <xs:complexType>
> >        <xs:sequence>
> >          <xs:element ref="u:Description"/>
> >          <xs:element ref="u:PriceAmount"/>
> >          <xs:element minOccurs="0" ref="u:LineItemExtension"/>
> >        </xs:sequence>
> >      </xs:complexType>
> >    </xs:element>
> >    <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"/>
> >      </xs:choice>
> >    </xs:complexType>
> > </xs:schema>
> >
> > t:\fraser>type exaeroorder2.xml
> > <?xml version="1.0" encoding="utf-8"?>
> > <Order xmlns="urn:oasis:names:draft:ubl:schema:xsd:Order-2"
> >         xmlns:a="urn:x-aerospace:ubl:lineitem">
> >    <OrderNumber>123</OrderNumber>
> >    <LineItem>
> >      <Description>747 Repair Kit</Description>
> >      <PriceAmount>1200000.54</PriceAmount>
> >      <LineItemExtension>
> >        <a:LineItemDetail>
> >          <a:Part>
> >            <a:Description>Starboard wing</a:Description>
> >            <a:Amount>600000.00</a:Amount>
> >          </a:Part>
> >          <a:Part>
> >            <a:Description>Port wing</a:Description>
> >            <a:Amount>600000.00</a:Amount>
> >          </a:Part>
> >          <a:Part>
> >            <a:Description>Bolt</a:Description>
> >            <a:Quantity>2</a:Quantity>
> >            <a:Amount>.27</a:Amount>
> >          </a:Part>
> >        </a:LineItemDetail>
> >      </LineItemExtension>
> >    </LineItem>
> >    <LineItem>
> >      <Description>DC3 Repair Kit</Description>
> >      <PriceAmount>37.25</PriceAmount>
> >      <LineItemExtension>
> >        <a:LineItemDetail>
> >          <a:Part>
> >            <a:Description>Rubber band</a:Description>
> >            <a:Amount>37.25</a:Amount>
> >          </a:Part>
> >        </a:LineItemDetail>
> >        <hello xmlns="">
> >          <world/>
> >        </hello>
> >      </LineItemExtension>
> >    </LineItem>
> >    <TotalAmount>1200037.79</TotalAmount>
> > </Order>
> > 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@C...
> > Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/u/
> > Box 266, Kars, Ontario CANADA K0A-2E0    +1(613)489-0999 (F:-0995)
> > Male Cancer Awareness Aug'05  http://www.CraneSoftwrights.com/u/bc
> > Legal business disclaimers:  http://www.CraneSoftwrights.com/legal
> >
> >
> > -----------------------------------------------------------------
> > 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://www.oasis-open.org/mlmanage/index.php>
> >
> >
>
> -----------------------------------------------------------------
> 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://www.oasis-open.org/mlmanage/index.php>
>
>

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member