XML Schema Instance Generator

To generate sample XML files from an XML Schema use the Generate Sample XML Files... dialog. It is opened with the action ToolsGenerate Sample XML Files...

 

Figure 4.70. The Generate Sample XML Files dialog

The Generate Sample XML Files dialog

Complete the dialog as follows:

URL

Schema's URL. Last used URLs are displayed in the drop-down box.

Namespace

Displays the namespace of the selected schema.

Document root

After the list is selected, a list of elements is displayed in the combo box. The user should choose the root of the XML documents to be generated.

Output folder

Path to the folder where the generated XML instances will be saved.

Filename prefix and Extension

Generated files' names have the following format: prefixN.extension, where prefix and extension are specified by the user and N represents an incremental number from 0 upto Number of instances - 1.

Number of instances

The number of XML files to be generated.

Open first instance in editor

When checked, the first generated XML file will be opened in editor.

Namespaces

Here the user can specify the default namespace as well as the proxies (prefixes) for namespaces.

 The Options tab becomes active only after the URL field is filled-in and a schema is detected. It allows the user to set specific options for different namespaces and elements.

 

Figure 4.71. The Generate Sample XML Files dialog

The Generate Sample XML Files dialog

Namespace / Element

Allows the user to define settings for:

  • All elements from all namespaces. This is the default setting and it can also be accessed from Options -> Preferences -> XML / XML Instance Generator.

  • All elements from a specific namespace.

  • A specific element from a specific namespace.

Generate optional elements

When checked, all elements will be generated, including the optional ones (having the minOccurs attribute set to 0 in the schema).

Generate optional attributes

When checked, all attributes will be generated, including the optional ones (having the use attribute set to optional in the schema.)

Values of elements and attributes

Controls the content of generated attributes and elements. Several choices are available:

  • None - No content is inserted;

  • Default - Inserts a default value depending of data type descriptor of the respective element/attribute. The default value can be either the data type name or an incremental name of the attribute or element (according to the global option from the XML instance generator preferences page);

  • Random - Inserts a random value depending of data type descriptor of the respective element/attribute.

Preferred number of repetitions

Allows the user set the preferred number of repeating elements related with minOccurs and maxOccurs defined in XML Schema.

  • If the value set here is between minOccurs and maxOccurs, that value will be used;

  • If the value set here is less than minOccurs, the minOccur value will be used;

  • If the value set here is greater than maxOccurs, that value will be used.

Maximum recursivity level

Option to set the maximum allowed depth of the same element in case of recursivity.

Choice strategy

Option to be used in case of xs:choice or substitutionGroup. The possible strategies are:

  • First - the first branch of xs:choice or the head element of substritutionGroup will be always used;

  • Random - a random branch of xs:choice or a substitute element or the head element of a substitutionGroup will be used.

Generate the other options as comments

Option to generate the other possible choices or substitutions (for xs:choice and substitutionGroup). These alternatives will be generated inside comments groups so you can uncomment them and use later. Use this option with care (for example on a restricted namespace and element) as it may generate large result files.

The XML instance generation tool can be launched also directly from the XML Schema editor from a shortcut action available on the popup menu of the Full Model View of the schema diagram view. The Options tab is activated by default as the Schema tab is filled with the data of the currently selected element of the diagram.