Summary
This sample shows a number of elements within a Hierarchy. It includes local (anonymous) & global complextype's. It also shows how collections are manilpulated within sequences & choices.

Details
This schema contains 2 globally defined elements AddressType, ItemType and Invoice. All of these objects can be used as the documentElement (root element) in a valid XML document.
The Invoice object also contains a sequence, the sequence contains a number of child elements;
InvoiceNo is a primitive
DeliveryAddress is a element that conforms to the global element AddressType.
BillingAddress is an optional (the corisponding property on the Invoice object may contain a null because of this) element that conforms to the global element AddressType.
Item is a collection of elements conforming to the global element ItemType.
Payment is a locally defined element, it in turn contains a choice of; an element 'VISA' or a collection of 'Vouchers' elements or an element 'Cash' which is untyped within the schema, and represented as a string within the generated code.

XSD Source Files
 SimpleHierarchy.xsd
 Schema Diagrams

Sample Name Description C++ C# Java VB.Net VB6
Navigation The sample demonstrates how to navigate a simple Hierarchy of elements, including optional elements, choices, and collections.
The sample shows the Invoice as the root element, it contains the optional element BillingAddress. It also conatins 2 Item elements, showing how collections of elements can be manipulated. The Payment element conatins a VISA element, this can be determined by checking the value of invoice->GetPayment()->GetChoiceSelectedElement(), this will deturimine which of the 3 posible elements are selected.
Example   Example   Example   Example   Example  
Collections in a choice The sample builds on the previous sample, and demonstrates how to deal with a choice that contains a collection of elements. Example   Example   Example   Example   Example  

Main Menu