The latest, and hopefully the last, discriminators write-up which incorporates comments from Steve H and Stephanie.

Steve questioned:   It is a processing error if none of the choice branches are known to exist.
Steve: I know we agreed on this but I’m concerned that I am now unable to model the situation where I have a header, a footer, and in between either nothing or exactly 1 of a choice of n records

Also the WG agreed that:
Discriminators are not allowed on
- Global groups and the top level sequence or choice of a global group.
- Global element decalrations
- The top level group of a complex type.
- Anonymous groups other than when it is the top level of a choice branch.

Which I think reduces to
dfdl:discriminator can be an annotation on
·        a local xs:element declaration

·        an xs:element reference

·        an xs:group reference

·        an xs:sequence (when the top level of a choice branch)

·        an xs:choice (when the top level of a choice branch)





Regards

 
Alan Powell
 
Development - MQSeries, Message Broker, ESB
IBM Software Group, Application and Integration Middleware Software
-------------------------------------------------------------------------------------------------------------------------------------------
IBM
MP211, Hursley Park
Hursley, SO21 2JN
United Kingdom
Phone: +44-1962-815073
e-mail: alan_powell@uk.ibm.com







Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU