1. A computer-implemented method of computing code complexity of an XML schema code, comprising: receiving XML schema code; analyzing the XML schema code to determine a complexity value of the XML schema code, wherein the complexity value is determined by performing the following acts: (a) for each choice group model in the XML schema code, adding n to the complexity value where n is the number of branches in the choice group model; (b) adding a value of one to the complexity value for each element in the XML schema code having a nillable attribute equal to true; (c) adding a value of one to the complexity value for each root element declaration in the XML schema code; (d) adding a value of v to the complexity value for each type reference to a user-defined type t, where v is the number of non-abstract subtypes of t; (e) adding a value of j to the complexity value for each element that references a substitution group, where j is the number of non-abstract participants in the substitution group; and (f) adding a value of one to the complexity value for each element in the XML schema code having an occurrence constraint except for an element that includes occurrence constraints where minOccurs is equal to maxOccurs; and reporting the complexity datavalue.