package org.jibx.v2; import org.jibx.runtime.JiBXException; /** * Interface implemented by all classes corresponding to global schema definitions and <complexType> definitions * (global or nested). This includes <attributeGroup> and <group> definitions, as well as global <attribute> * and <element> definitions. Besides the actual interface methods, classes which correspond to a complexType must * define an unmarshalling method public static ClassName _check_substituted(XmlReader, ClassName) to check * for type substitution, those which correspond to an element or group must define a method public static boolean * _is_present() to check if an optional instance of the element or group is present, and classes which * correspond to anything other than a complexType must define a public static ClassName * _check_instance(ClassName) method to return an instance of the class (where the supplied instance may be * null, or an instance of a subclass). */ public interface MappedStructure { /** * Marshal the structure representation. In the case of an <attribute>, <attributeGroup>, or <complexType> * structure the writer must be positioned on the element start tag at the time of this call. * * @param wrtr * @throws JiBXException */ void _marshal(XmlWriter wrtr) throws JiBXException; /** * Unmarshal the structure representation. In the case of an <attribute>, <attributeGroup>, or * <complexType> structure the reader must be positioned on the element start tag at the time of this call. * * @param rdr * @throws JiBXException */ void _unmarshal(XmlReader rdr) throws JiBXException; }