The root element that contains the different binding elements. The binding file is written from a schema point of view and follows the structure of an XML Schema. The root element can also be used to configure the default binding type. A binding file can include other binding files by specifying the location (URI) of the binding files to include. Mappings between a namespace and a java package can directly be defined in the binding file. This element allows also the mapping between a package and a schemaLocation. This element allows to define naming convention when naming a complexType, element or modelGroup. Indeed the user can decide of a prefix to add to each class name as well as a suffix. This naming style won't affect the names entered in the binding file but only the XML Names. A binding element is defined to express the binding between an XML Schema Component and Java class OR a java interface or a java member class. The XML Schema component can be an element, an attribute, a complexType or a group. Attribute cannot be mapped to class, the reader of a binding file will take care that class or interface are not used for component whose xml-type is attribute. This type gathers the needed information to generate a Java Class from a binding file. Options such as generating the equals method, using wrapper classes for primitives or using bound properties can be defined via that element. When defined locally the options override the values defined in the castor.properties file. This type represents the binding for class member. It allows the definition of its name and java type as well as an implementation of FieldHandler to help the Marshalling framework in handling that member. Defining a validator is also possible. The names given for the validator and the fieldHandler must be fully qualified This type represents the binding for the 'content' member generated as part of a 'mixed' complex type definition. It allows the definition of its name. This type allows the mapping between an XML schema enumeration and a java class that follows the type-safe enumeration paradigm. Additionally, it allows the specify the name of the Java constant definition for a given enumeraton value. This type represents an easy path to access an element or an attribute inside a schema. It is a direct restriction of the XPath specification. List of the allowed values for the binding type from an XML schema to a java class. The type can either be 'element' or 'complexType'.