issue with restrictions

Hello,

I'm new to this list. I'm having a XSD development issue that relates to 
restrictions and I hope this is the right place to ask.

My context is one where developers can create new messages but they must 
follow some pre-defined patterns. For instance, I want all my search 
request messages to contain 0 or more search criterias that they can 
pick from a list of concrete predefined criterias.

What I am trying to do is use XSD to enforce these patterns. A sample 
XSD is below. When I validate the XSD, I get the error that 
SearchRequestByDate is not a valid restriction of SearchRequest.

Thank you,

Guillaume

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:complexType name="SearchRequest" abstract="true">
        <xs:sequence>
            <xs:element ref="SelectionCriteria" minOccurs="0" 
maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:element name="SelectionCriteria" abstract="true"/>
   
    <xs:element name="StartDate" type="xs:string" 
substitutionGroup="SelectionCriteria"/>
    <xs:element name="EndDate" type="xs:string" 
substitutionGroup="SelectionCriteria"/>
   
    <xs:complexType name="SearchRequestByDate">
        <xs:complexContent>
            <xs:restriction base="SearchRequest">
                <xs:sequence>
                <xs:element ref="StartDate"/>
                <xs:element ref="EndDate" minOccurs="0"/>
                </xs:sequence>
            </xs:restriction>
        </xs:complexContent>
    </xs:complexType>
   
</xs:schema>

Received on Tuesday, 6 March 2007 20:36:52 UTC