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] xml schema question: subst group example in Primer?

[ Lists Home | Date Index | Thread Index ]

Hi Burak,

Yes, it looks like an error in the spec.

Best Regards,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com


Burak Emir wrote:
> Hello, xml-dev,
> 
> I try it here because I have not received an answer on xmlschema-dev.
> 
> Could someone give me an answer on this please?
> 
> I always thought there was nothing difficult substitution, but stumbling
> again over this example in the primer confused me.
> 
> The instances <items>...</items> with the *two* comments will surely
> never validate?? Because its *two* comments, not one?
> 
> Isnt the default maxOccurs="1"? Does the example try to say "you can use
> either one of these" ?
> 
> Thanks in advance,
> Burak
> 
> =======
> Hello all,
> 
> The XML Schema Part 0, Section 4.6 "Substitution groups" reads
> =======
> 
> Example
> Declaring Elements Substitutable for comment
> 
> <element name="shipComment" type="string"
>         substitutionGroup="ipo:comment"/>
> <element name="customerComment" type="string"
>         substitutionGroup="ipo:comment"/>
> 
> When these declarations are added to the international purchase order
> schema, |shipComment| and |customerComment| can be substituted for
> |comment| in the instance document, for example:
> 
> Example
> Snippet of ipo.xml <http://www.w3.org/TR/xmlschema-0/#ipo.xml> with
> Substituted Elements
> 
> ....
> <items>
>  <item partNum="833-AA">
>    <productName>Lapis necklace</productName>
>    <quantity>1</quantity>
>    <USPrice>99.95</USPrice>
>    <ipo:shipComment>
>      Use gold wrap if possible
>    </ipo:shipComment>
>    <ipo:customerComment>
>      Want this for the holidays!
>    </ipo:customerComment>
>    <shipDate>1999-12-05</shipDate>
>  </item>
> </items>
> ....
> 
> =====
> 
> But if you check ipo.xsd elsewhere, you find:
> ...
> 
> <complexType name="Items">
>    <sequence>
>      <element name="item" minOccurs="0" maxOccurs="unbounded">
>        <complexType>
>          <sequence>
>            <element name="productName" type="string"/>
>            <element name="quantity">
>              <simpleType>
>                <restriction base="positiveInteger">
>                  <maxExclusive value="100"/>
>                </restriction>
>              </simpleType>
>            </element>
>            <element name="USPrice"    type="decimal"/>
>            <element ref="ipo:comment" minOccurs="0"/> <!-- HERE -->
>            <element name="shipDate"   type="date" minOccurs="0"/>
>          </sequence>
>          <attribute name="partNum" type="ipo:SKU" use="required"/>
>        </complexType>
>      </element>
>    </sequence>
>  </complexType>
> ...
> ====
> 
> Why would it be allowed to include a customerComment AND a shipComment
> ?!? My thinking goes, there should be up to one.
> Have I overlooked something?
> 
> Thanks,
> 
> Burak Emir
> 
> http://lamp.epfl.ch/~buraq
> 
> 
> 
> 
> -----------------------------------------------------------------
> 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>




 

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

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