1. A system to marshal and unmarshal data between XML and Java, comprising: an XML data; an XML schema which defines the XML data; an XML type which is a Java type capable of accessing the XML data within Java; and a compiler capable of generating the XML type from the XML schema.