Rogue Wave banner
Previous fileTop of DocumentContentsIndex pageNext file
HydraExpress C++ API Reference Guide
Rogue Wave web site:  Home Page  |  Main Documentation Page

rwsf::XmlMarshaller

Group:  XML Binding


rwsf::XmlMarshallerrwsf::Marshaller

Local Index

Members

Header File

#include rwsf/xmlbinding/XmlMarshaller.h

Description

The base class for the generated marshalling classes that marshal and unmarshal XML documents.

The pure virtual methods dispatch to the static member functions in the generated classes. These methods are used in cases where the schema allows substitutability via sub-typing or substitution groups.

The static methods are used to unmarshal elements whose type is ambiguous because they may be a base type or one of its derived types. Such elements require an xsi:type attribute in the instance document, and the element is unmarshaled into the correct type based on this attribute value.

Public Static Member Functions

bool
unmarshalFromXsiType(rwsf::XmlReader & reader,
    rwsf::XmlBindingHandle & aHandle,
    const std::string & marshalNameSuffix,
    const rwsf::XmlName & elementName);
void
unmarshalXsiAttributes(rwsf::XmlReaderAttributeList & attrs,
    rwsf::XmlAttributeSet & attributes,
    rwsf::XmlBindingHandle & aHandle);
void
unmarshalXsiType(const rwsf::XmlReader & reader,
    std::string & localName,
    std::string & prefix,
    std::string & namespaceURI);

Public Member Functions

const char *
getFormat() const;
void
marshal(rwsf::XmlWriter & writer,
    const rwsf::XmlBindingHandle & aHandle,
    bool includeChildTypeAttributes,
    const rwsf::XmlName & elementName,
    bool includeSelfTypeAttribute = false,
    bool nilValue = false) = 0;
void
unmarshal(rwsf::XmlReader & reader,
    rwsf::XmlBindingHandle & aHandle,
    const rwsf::XmlName & elementName) = 0;
rwsf::XmlBindingHandle
unmarshal(rwsf::XmlReader & reader,
    const rwsf::XmlName & elementName) = 0;


Previous fileTop of DocumentContentsIndex pageNext file

© Copyright Rogue Wave Software, Inc. All Rights Reserved. All Rights Reserved. Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. HydraExpress is a trademark of Rogue Wave Software, Inc. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.