String Mapping
When the mappings element contains a user-specified type for xsd:string, the generated classes use the specified string type wherever a class requires a string. The exception to this rule is the marshaling methods, which do the following:

The 
marshal() method signatures use the base string type, which is 
std:string for code generated with the 
-stl option, and 
RWCString for code generated with the 
-sourcepro option.

The 
unmarshal() method signatures have one overload that uses the base string type, and one overload that uses the specified string type.