[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: XML Schemas: Best Practices

  • From: Eddie Robertsson <eddie@a...>
  • To: Martin Bryan <mtbryan@s...>
  • Date: Thu, 18 Jan 2001 15:40:08 +1100

xml restriction date
> >   What if we wanted to extend
> >     <Book> by adding elements to the beginning (before <Title>), or in
> >     the middle, etc?  We can't do it with this mechanism.
>
> Whats wrong with
>
>     <complexType name="BookTypePlusReviewer">
>        <complexContent>
>             <extension base="c:BookType" >
>                 <sequence>
>                     <element name="Reviewer" type="string"/>
>                     <element name="Title" type="string"/>
>                     <element name="Author" type="string"/>
>                    <element name="Date" type="year"/>
>                    <element name="ISBN" type="string"/>
>                  <element name="Publisher" type="string"/>
>               </sequence>
>            </extension>
>        </complexContent>
>    </complexType>
>
> It still conforms to the type definition and adds the required new element.
> As far as I am aware there is no restriction on you redefining the existing
> elements if you need to reorder the elements. (This is the way restrictions
> work.)

I may be on thin ice here but I don't think this is correct. If you use
derivation using the above syntax you're not reordering the elements. Instead
you are extending the type to allow for all the elements in the base type
(Title, Author, Date, ISBN, Publisher) plus all the above elements in the new
group (Reviewer, Title, Author, Date, ISBN, Publisher). This means that a valid
instance document using the above type (BookTypePlusReviewer) would have to be:

<Book>
      <Title>The First and Last Freedom</Title>
      <Author>J. Krishnamurti</Author>
      <Date>1954</Date>
      <ISBN>0-06-064831-7</ISBN>
      <Publisher>Harper &amp; Row</Publisher>
      <Reviewer>Alan Rickman</Reviewer>
      <Title>The First and Last Freedom</Title>
      <Author>J. Krishnamurti</Author>
      <Date>1954</Date>
      <ISBN>0-06-064831-7</ISBN>
      <Publisher>Harper &amp; Row</Publisher>
</Book>

I don't think this is was Roger intended to achive. Is this correct?

Regards,
/Eddie




PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.