Home Toolkit Developer Vision About
Toolkit
Download
Features
FAQ
Developer
Quick Start
Introduction
Examples
Vision
Toolkit Description
The Ventriloquist's Dummy
Explanation
Aims
About
Toolkit Creator
Future Intentions

Implemented Sections of XML-Schema
For most schemas, SchemaCoder will create code that will compile and work properly. Schemas that it has been successfully tested on:

The following are a list of features that the Toolkit already has:-

Feature NameProgress
Client GUI SchemaCoder allows you to choose the required schema, and displays the schema information graphically. The GUI allows you to alter the names of the classes and methods that will be generated.
Parsing API XML Schema Toolkit contains a parsing API similar to DOM. The difference is that the objects created are those generated by SchemaCoder, depending on the XML being parsed. See a description of the Toolkit for more information.
Element code generation This works for almost all cases. The code created is a DOM-like tree, but of classes not objects. This allows each element with a different type to contain different functionality.
Complex type code generation A class is created to check elements using each complex type. The type checking encompassed by a complex type is generated automatically, so that child elements and attributes are only created according to the schema.
Simple type code generation A class is created for each simple type, although the type checking code within the class has to be created manually.

* The schema had to be amended (the xmlns:xml attribute is contentious and was removed)
+ The schema version had to be updated to the May 2019 Recommendation

Unimplemented Parts of XML-Schema and Bugs
XML-Schema is a huge standard, so parts of it have not yet been implemented

Feature NameProgress
Attribute validation Validation does not implement attribute default values - this can be done by hand.
Group compilationSchemaCoder does not create code for named groups, so referencing a group from another schema is not currently possible
'unique', 'key' and 'keyref'These have not yet been implemented
Complex type extending a simple content typeThis has now been implemented (from version 0.11), but the simple type is not converted from a string.
The 'all' elementThis has not been fully tested.
Complex type restriction checking Calculating whether a new type is a valid restriction of a complex type has not been completed - currently it is assumed to be valid.
Simple types from XML Schema standardOnly certain basic types (string, int, QName, etc) have been properly implemented so that they check for correct patterns and return the correct variant type. Most simple types have been left as strings. This is covered in more detail in the web-site documentation.
Simple type restrictionsThere is no automatic checking of simple type restrictions.
PatternsThe automatic generation of code to restrict simple types with a pattern has not yet been implemented. It can be created manually for each such simple type
ListsNot yet implemented - can be created manually
UnionsNot yet implemented - can be created by hand for each simple type
Error MessagingNot all schema errors are properly pinpointed and explained

Additional "features" can be reported via email to [email protected].

Webmaster: https://www.schematoolkit.com. Last updated: 19 November 2019.