[
Lists Home |
Date Index |
Thread Index
]
Title: RE: [xml-dev] XML Schema: At Least One of X Elements Must Appear
Sure - here is an example XML document excerpt:
<ReferenceIdentificationDetails>
<FinalSequenceNumber>XXXXXXXXXXX</FinalSequenceNumber>
<ShipmentNumber>XXXXXXXXX</ShipmentNumber>
<TransportationControlNumber>XXXXXXX</TransportationControlNumber>
<ShipmentDate>2002-02-02</ShipmentDate>
</ReferenceIdentificationDetails>
This is the equivalent of the REF01/02 scenario I describe below, where:
REF01 VALUE EQUATES TO ELEMENT
---------------- -----------------------------
FS FinalSequenceNumber
SI ShipmentNumber
TG TransportationControlNumber
(the ShipmentDate is REF03, and is optional)
In the schema, I've represented this as the following complex type:
<xsd:complexType name = "ReferenceIdentificationDetailsType">
<xsd:sequence>
<xsd:element ref = "FinalSequenceNumber" minOccurs="0"/>
<xsd:element ref = "ShipmentNumber" minOccurs="0"/>
<xsd:element ref = "TransportationControlNumber" minOccurs="0"/>
<xsd:element ref = "ShipmentDate" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
As you can see, I had to make all 3 "qualified" elements optional, because it is not predictable which of the 3 will appear.
Thanks,
Joe Chiusano
LMI
> **************************************************************************
> Joseph M. Chiusano
> Logistics Management Institute
> 2000 Corporate Ridge
> McLean, VA 22102
> Email: jchiusano@lmi.org
> Tel: 571.633.7722
> **************************************************************************
>
-----Original Message-----
From: Dare Obasanjo [mailto:dareo@microsoft.com]
Sent: Sunday, August 18, 2002 1:41 PM
To: CHIUSANO, Joseph; Ken Sall; CHIUSANO, Joseph; xml-dev@lists.xml.org
Subject: RE: [xml-dev] XML Schema: At Least One of X Elements Must
Appear
In general I don't think W3C XML Schema can satisfy your requirements but believe that there may be a work around for specific cases. Your example wasn't detailed enough to tell if your case is one where a work around is possible. Perhaps some sample XML or schema fragment?
-----Original Message-----
From: CHIUSANO, Joseph [mailto:JCHIUSANO@lmi.org]
Sent: Sun 8/18/2002 10:35 AM
To: 'Ken Sall'; CHIUSANO, Joseph; xml-dev@lists.xml.org
Cc:
Subject: RE: [xml-dev] XML Schema: At Least One of X Elements Must Appear
Not sure how use of a wildcard can help here....would you be willing to provide more specifics?
> **************************************************************************
> Joseph M. Chiusano
> Logistics Management Institute
> 2000 Corporate Ridge
> McLean, VA 22102
> Email: jchiusano@lmi.org
> Tel: 571.633.7722
> **************************************************************************
>
-----Original Message-----
From: Ken Sall [mailto:ken@sall.net]
Sent: Sunday, August 18, 2002 1:33 PM
To: CHIUSANO, Joseph; xml-dev@lists.xml.org
Subject: Re: [xml-dev] XML Schema: At Least One of X Elements Must
Appear
XML Schema: At Least One of X Elements Must AppearJoseph wrote> I am 99.9%
sure that there is no way to represent in XML Schema that "at least one of
the following X elements must appear in the XML document" - **am I
correct?**
How about:
<xsd:any minOccurs="0" maxOccurs="unbounded" > <!-- or 1 -->
<!-- nest xsd:sequence or xsd:choice here -->
</xsd:any>
- Ken Sall kensall@comcast.net or ken@sall.net
- XML Consultant/Author http://mywebpages.comcast.net/kensall/
- XML Family of Specifications: A Practical Guide (just published)
- http://WDVL.Internet.com/Authoring/Languages/XML/XMLFamily/
|