The XSD type base classes are the base classes from which XBinder-generated C++ classes for XSD types are derived. The main base class from which all XSD type classes are derived is the OSRTBaseType class. Generated classes for many types are derived directly from this. However, the following intermediate built-in classes are also present from which generated classes are also derived:
OSXMLStringClass - This is the base class for XSD string types such as xsd:string, xsd: token, etc.. It is derived from the OSRTBaseType class. It provides member variables to hold a UTF-8 string value as well as a CDATA flag to indicate if the string should be encoded as a CDATA section. There is also an OSXMLSTLStringClass which encapsulates an STL std::string variable. This is used the the -usestl command-line option is used.
OSDynOctStrClass - This is the base class for the XSD hexBinary and base64Binary string types. It is derived from the OSRTBaseType class. It provides member variables to hold binary data in native machine format.
OSRTDListClass - This is the base class for XSD repeating types that use linked lists. It is derived from the OSRTBaseType class as well as the C OSRTDList structure. It provides methods for adding, retrieving, and removing items from linked lists.
OSRTObjListClass - This is the base class for XSD repeating types that hold objects in linked lists. It is similar to the OSRTDListClass described above except that the base type for items in the list is OSRTBaseType. This allows items in the list to be properly destructed when memory ownership for the items is transferred to the list object.
OSXSDDateTimeClass - This is a utility class for operating on XSD date/time formats. It is derived from the OSRTBaseType class as well as the C OSXSDDateTime structure. Although it is currently not used in any generated classes (date/time classes are currently represented as strings), the class can be used to format or parse XSD date/time strings in application programs.