Please try whether the following work. Just re-arranged a little bit.
=============
<?xml version="1.0" ?>
<xs:schema xmlns

s="http://www.w3.org/2001/XMLSchema">
<xs:element name="response" type="respType" />
<xs:complexType name="respType">
<xs:sequence>
<xs:element name="msg_id" type="xs:int" />
<xs:element name="command" type="xs:string" />
<xs:choice>
<xs:group ref="g1" />
<xs:group ref="g2" />
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:group name="g1">
<xs:sequence>
<xs:element name="time" type="xs:int" />
<xs:element name="b" type="xs:string" />
</xs:sequence>
</xs:group>
<xs:group name="g2">
<xs:sequence>
<xs:element name="sometag" type="xs:string" />
<xs:element name="time" type="xs:int" />
<xs:element name="a" type="xs:string" />
</xs:sequence>
</xs:group>
</xs:schema>
================
"Andrew" <> wrote in message
news:brprcb$2uc1$...
> This is my schema:
>
> <?xml version="1.0"?>
> <xs:schema xmlns
s="http://www.w3.org/2001/XMLSchema">
>
> <xs:element name="response" type="respType"/>
>
> <xs:complexType name="respType">
> <xs:choice>
> <xs:group ref="g1"/>
> <xs:group ref="g2"/>
> </xs:choice>
> </xs:complexType>
>
> <xs:group name="g1">
> <xs:sequence>
> <xs:element name="msg_id" type="xs:int"/>
> <xs:element name="command" type="xs:string"/>
> <xs:element name="time" type="xs:int"/>
> <xs:element name="b" type="xs:string"/>
> </xs:sequence>
> </xs:group>
>
> <xs:group name="g2">
> <xs:sequence>
> <xs:element name="msg_id" type="xs:int"/>
> <xs:element name="command" type="xs:string"/>
> <xs:element name="sometag" type="xs:string"/>
> <xs:element name="time" type="xs:int"/>
> <xs:element name="a" type="xs:string"/>
> </xs:sequence>
> </xs:group>
>
> </xs:schema>
>
>
>
>