Defining complexTypes in XML Schemas

In an XML Schema, an element that contains only data is a simpleType. Elements with any other contents are complexTypes. (Attributes are always simpleTypes.) The XML Schema Recommendation does not include any built-in complexTypes. You must define each complexType you need.

In the Diagram view, when you define a complexType as a top-level definition, it is a global declaration. You can specify that any element in the schema is of this complexType. Similarly, in the Tree view, it is a global declaration when you define a complexType as a child of the Schema node.

Tip

 

Define the complexType first. Then when you define an element, Stylus Studio includes your complexType's name in the menu that lists the available types for your new element. You can select the name of the complexType from the menu.

You can also define a complexType in the definition of an element. See Defining Elements That Contain Subelements in XML Schemas.

Stylus Studio takes care of most of the details for you. But as you define a complexType, it is helpful to keep in mind that a complexType node can have only one child node that is a model group modifier. However, this modifier node can have any number of child nodes that are modifiers. In this way, you can specify any number of modifiers in a complexType. Each modifier controls the occurrence of its child nodes. You can specify the same modifier more than once. For example, you might want to specify the sequence modifier, with some child nodes, then the choice modifier with some child nodes, and then the sequence modifier again with other child nodes.

This section discusses the following topics:

Flat File to XML Mapper

Convert any flat file to XML in 3 clicks or less using the Stylus Studio Flat File to XML Mapper. Supports tons of different file encodings: UTF-8, UTF-16, US-ASCII, ISO-8859-1, and more.

Using DTD in Microsoft Applications

Learn how to integrate DTD's into your Microsoft applications using MSXML or System.XML DTD processing components.

XQuery Mapper

Stylus Studio has the industry's only XQuery mapper, enabling you to develop sophisticated XML mappings consisting of queries and data transformation in an intuitive, visual manner.

Simple API for XML (SAX)

SAX stands for Simple API for XML - SAX is an XML standard used everywhere in Stylus Studio, for parsing and building representations of XML documents.

Stylus Most Wanted

 
Free Stylus Studio XML Training:
W3C Member