VorteXML
What's New in VorteXML Designer Version 3
VorteXML Designer V3 offers a variety of significant enhancements including W3C XML schema support that make it even easier to convert data into valid XML for Web Services, content management, online bill presentment, application integration, and any other applications that require XML.
Specifically VorteXML Designer Version 3 Edition adds the following features:
- Supports XSD schemas for loading into the mapping tree and validation
- Allows derivation and generation of XML schema from input data
- Offers easy generation of custom XML schema from existing XSD, XDR or DTDs
- Provides intelligent querying of schemas on loading
- Avoids bloating of XML files, by allowing for suppression of non-required elements and attribution
- Adds search functionality for elements and attribution in the mapping tree, for use with very large schemas and DTDs
- Provides support for Datetime and Time input data
- Offers an improved Analysis window, giving extensive feedback on potential problems during the profile development
- Supplies an improved Verify function, so users can quickly identify and accommodate data that falls outside defined parameters
- New Formula editor
- Full support for UTF-8 encoding
Description of Features
Generating schema from the output tree
VorteXML is able to write fully featured XSD Schema based on the output tree and the accompanying metadata, such as the repetition settings and base datatypes.
This functionality can be used in a variety of ways:
- Generating a schema from scratch using the simple tree interface
- Generating a schema by importing the data extracted from the input document
- Generating a standalone schema after importing a schema that is distributed over many files
- Generating a 'local' schema after importing a schema that uses multiple namespaces
- Generating a custom schema, after importing an existing schema and editing it to your specific requirements
A key benefit of this feature is the ability to derive custom schemas for your own internal or B2B purposes by using one of the industry standard schema and then cutting it down to size to suit your needs. Many of the industry standard schema are overcomplicated for most users, as they have to cater for every possible situation.
For example, an original schema for a simple invoice is depicted below with a size of approximately 35k (Figure 1).

Figure 1
Below is the same schema, generated and edited in VorteXML Designer V3, trimmed to only include the necessary elements for the invoice, with a size of approximately 5K (Figure 2).

Figure 2
Intelligent querying of schemas on loading
When VorteXML Designer loads a schema, it queries the schema for the information it needs to generate the output tree for mapping, information for the schema log and also information to automatically assign base data types, repetition types and element/attribute suppression.
Generating the tree
As with the previous version of VorteXML Designer, the schema is represented as a tree, to enable easy mapping of data (Figure 3).

Figure 3
Assign base data types
As the schema is loaded, the elements and attributes are assigned the supported base data types from the schema. These are optional and can be dismissed or edited. VorteXML uses the base data types to map the input data to the XSD data types.
For example, the input date may be in DD/MM/YY format, so assigning a dateTime to the element means that the element will be output in the correct XSD dateTime format, i.e. 2003-03-01T00:00:00 (Figure 4).

Figure 4
Assign repetition types
When a schema is loaded, VorteXML Designer will attempt to minimize the amount of elements that are used in generating the output XML.
This is to enable users to use the minimum amount of mappings and elements to create a valid XML document. It will also show any elements that should be mapped in the schema log.
In previous versions of VorteXML Designer, all elements in a DTD or XDR were output in an XML file. VorteXML Designer 3.0 has a new 'unmapped' repetition type to exclude elements and attributes from the XML output (Figure 5).

Figure 5
Element/Attribute Suppression
VorteXML Designer V3 automatically assigns a suppression status for text elements and attributes when loading a schema. This means if the element is empty, then it will not be included in the output XML.
The 'Suppress if value is empty' setting shows the user if the text element or attribute is required or can be safely ignored or even deleted from the output tree, if the user wishes to derive a more compact schema using VorteXML's 'Generate Schema' function.
Schema Log
The Schema log derives information as the schema is loaded to assist you in using the heavyweight industry schema available.
The Schema log allows you to collapse and expand the 5 key areas of information contained in the schema log. Additionally, you can drill straight from the log into the ouput tree, to edit the element or attribute quickly and easily.
Elements truncated to avoid infinite loops
Many schema include a built-in recursion which is not necessary for VorteXML Designer V3, as elements can be assigned repetitions to repeat element subtrees within documents.
For example, you can automatically repeat a Line element as many times as there are lines in an invoice, rather than laboriously mapping each line separately.
This can serve to simplify the mapping to many schema and also trims the output tree, ready to produce leaner 'generated' schema, if required.
Choice groups with extra elements to be removed
Schema can include choice elements, and rather than prompt for every choice at the time of loading the schema, all choice elements are added to the output tree. In some cases there can be hundreds of these, so the log allows users to see all the choice elements in the tree and edit them for their specific needs.
Required elements that have to be mapped
This shows the required elements that the schema requires to be valid.
Optional elements that can be mapped or removed
Most industry schema include many optional elements that are not necessary to produce a valid XML document. These are included to cater for the widest possible audience, so VorteXML Designer V3 allows you to identify these elements and map the ones you want, or delete, or just leave the ones you don't want, unmapped, so they don't appear in the XML.
Optional "any" wildcards to be extended
Some schema allow users to add their own elements and attributes in certain sections of the schema. These are identified so users can edit the output tree in VorteXML Designer V3 to include their customizations, while still validating against the schema.
Support for common XSD data types
VorteXML Designer V3 will format data extracted from documents as DateTime, Character or Numeric according to a range of XSD Data Types (see below).
String & Name
- string
- normalizedString
- token
- name
- NCName
- language
Numeric
- float
- double
- decimal
- integer
- long
- int
- short
- byte
- positiveInteger
- negativeInteger
- nonNegativeInteger
- nonPositiveInteger
- unsignedLong
- unsignedInt
- unsignedShort
- unsignedByte
Date & Time
- date
- time
- dateTime
- gYear
- gYearMonth
- gMonth
- gMonthDay
- gDay
- duration
Legacy
- ID
- IDREF
- IDREFS
- ENTITY
- ENTITIES
- NMTOKEN
- NMTOKENS
- NOTATION
Other
- OName
- boolean
- hexBinary
- base64Binary
- anyURI
- anyType









