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] Problems with schema creation, help!!

[ Lists Home | Date Index | Thread Index ]

Title: Problems with schema creation, help!!
Thanks for the help Bryce, I'll give that a whirl!
-----Original Message-----
From: Bryce K. Nielsen [mailto:bryce@sysonyx.com]
Sent: 04 February 2004 16:22
To: xml-dev@lists.xml.org
Subject: Re: [xml-dev] Problems with schema creation, help!!

Assuming this is W3C's schema language, the first requirement to be in any position will be difficult. <xsd:sequence> doesn't allow this, <xsd:all> sorta does but there are restrictions. You can mock it by making everything in it's own optional sequence, such as <xsd:sequence minOccurs='0' maxOccurs='1'>, and that theoretically will work though some validators have struggled with this.
The second requirement is a snap, just use minOccurs and maxOccurs. This I think will work for you:
<!-- DISCLAIMER: Written on the fly, may have syntax errors -->
<xsd:element name="code">
    <!-- put the other elements in a different xsd:sequence node -->
    <!-- this sequence (i.e. the party node) can now occur up to two times, if at all -->
    <xsd:sequence  minOccurs="0" maxOccurs="2">
      <xsd:element name="party">
            <xsd:element name="name" type="xsd:string"/>
            <xsd:element name="account" type="xsd:string"/>
Bryce K. Nielsen
SysOnyx, Inc. (www.sysonyx.com)
Makers of xmlArchitect, the Smart XML Schema Editor
----- Original Message -----
Sent: Wednesday, February 04, 2004 8:59 AM
Subject: [xml-dev] Problems with schema creation, help!!

I have XML of a structure similar to this:

      <account>blah blah</account>
      <account>deBlah deBlah</account>

and I need to build a schema that can enforce the following rules on the <party> element:
  - <party> can be in any position under the <code> element
  - <party> can occur either 0, 1 or 2 times

I wanted initially to use the all compositor but this will only allow 0 or 1 instances of <party> under <code>. Does any one have any insights into how this can be achieved?




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

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