[#BloombergLP-balxml]
= xref:BloombergLP.adoc[BloombergLP]::balxml
:relfileprefix: ../
:mrdocs:

Namespace for XML encoding, decoding, and formatting components&period;

== Types

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balxml/Base64Parser.adoc[`Base64Parser`] 
| This is a push parser for supported Base64 types (`bsl&colon;&colon;vector&lt;char&gt;` or `bsl&colon;&colon;string`)&period;
| xref:BloombergLP/balxml/ConfigSchema.adoc[`ConfigSchema`] 
| Provide a namespace for the service configuration schema&period;
| xref:BloombergLP/balxml/Decoder.adoc[`Decoder`] 
| Engine for decoding value&hyphen;semantic objects in XML format&period;
| xref:BloombergLP/balxml/DecoderOptions.adoc[`DecoderOptions`] 
| Options for controlling the XML decoding process&period;
| xref:BloombergLP/balxml/Decoder_ChoiceContext.adoc[`Decoder&lowbar;ChoiceContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ElementContext.adoc[`Decoder&lowbar;ElementContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ErrorLogger.adoc[`Decoder&lowbar;ErrorLogger`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_InstantiateContext-01.adoc[`Decoder&lowbar;InstantiateContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ListParser.adoc[`Decoder&lowbar;ListParser`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_NillableContext.adoc[`Decoder&lowbar;NillableContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseAttribute.adoc[`Decoder&lowbar;ParseAttribute`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseAttribute_executeImpProxy.adoc[`Decoder&lowbar;ParseAttribute&lowbar;executeImpProxy`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseAttribute_executeProxy.adoc[`Decoder&lowbar;ParseAttribute&lowbar;executeProxy`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseNillableObject.adoc[`Decoder&lowbar;ParseNillableObject`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseNillableObject_executeImpProxy.adoc[`Decoder&lowbar;ParseNillableObject&lowbar;executeImpProxy`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseObject.adoc[`Decoder&lowbar;ParseObject`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseObject_executeImpProxy.adoc[`Decoder&lowbar;ParseObject&lowbar;executeImpProxy`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseObject_executeProxy.adoc[`Decoder&lowbar;ParseObject&lowbar;executeProxy`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseSequenceSimpleContent.adoc[`Decoder&lowbar;ParseSequenceSimpleContent`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_ParseSequenceSubElement.adoc[`Decoder&lowbar;ParseSequenceSubElement`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_PrepareSequenceContext.adoc[`Decoder&lowbar;PrepareSequenceContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_PushParserContext.adoc[`Decoder&lowbar;PushParserContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_SelectContext.adoc[`Decoder&lowbar;SelectContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_SequenceContext.adoc[`Decoder&lowbar;SequenceContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_SimpleContext.adoc[`Decoder&lowbar;SimpleContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_StdStringContext.adoc[`Decoder&lowbar;StdStringContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_StdVectorCharContext.adoc[`Decoder&lowbar;StdVectorCharContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_UTF8Context.adoc[`Decoder&lowbar;UTF8Context`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_UnknownElementContext.adoc[`Decoder&lowbar;UnknownElementContext`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/Decoder_decodeImpProxy.adoc[`Decoder&lowbar;decodeImpProxy`] 
| COMPONENT&hyphen;PRIVATE CLASS&period; DO NOT USE OUTSIDE OF THIS COMPONENT&period;
| xref:BloombergLP/balxml/ElementAttribute.adoc[`ElementAttribute`] 
| Class to represent the properties of an attribute in an XML element tag&period;
| xref:BloombergLP/balxml/Encoder.adoc[`Encoder`] 
| This `class` contains the parameterized `encode` functions that encode `bdlat` types in XML format&period;
| xref:BloombergLP/balxml/EncoderOptions.adoc[`EncoderOptions`] 
| Options for performing XML encodings&period;
| xref:BloombergLP/balxml/Encoder_Context.adoc[`Encoder&lowbar;Context`] 
| This `struct` contains state that is maintained during encoding&period;
| xref:BloombergLP/balxml/Encoder_EncodeObject.adoc[`Encoder&lowbar;EncodeObject`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_EncodeObject_executeImpProxy.adoc[`Encoder&lowbar;EncodeObject&lowbar;executeImpProxy`] 
| Component&hyphen;private struct&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_EncodeObject_executeProxy.adoc[`Encoder&lowbar;EncodeObject&lowbar;executeProxy`] 
| Component&hyphen;private struct&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_EncodeValue.adoc[`Encoder&lowbar;EncodeValue`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_EncodeValue_executeImpProxy.adoc[`Encoder&lowbar;EncodeValue&lowbar;executeImpProxy`] 
| Component&hyphen;private struct&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_OptionsCompatibilityUtil.adoc[`Encoder&lowbar;OptionsCompatibilityUtil`] 
| Component&hyphen;private `struct`&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_SequenceFirstPass.adoc[`Encoder&lowbar;SequenceFirstPass`] 
| Component private class&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_SequenceFirstPass_addAttributeImpProxy.adoc[`Encoder&lowbar;SequenceFirstPass&lowbar;addAttributeImpProxy`] 
| Component&hyphen;private struct&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_SequenceFirstPass_addAttributeProxy.adoc[`Encoder&lowbar;SequenceFirstPass&lowbar;addAttributeProxy`] 
| Component&hyphen;private struct&period; Do not use&period;
| xref:BloombergLP/balxml/Encoder_SequenceSecondPass.adoc[`Encoder&lowbar;SequenceSecondPass`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/EncodingStyle.adoc[`EncodingStyle`] 
| Enumeration of encoding style (COMPACT or PRETTY)&period; This struct is generated using bas&lowbar;codegen&period;pl called by balxml&sol;code&lowbar;from&lowbar;xsd&period;pl
| xref:BloombergLP/balxml/ErrorInfo.adoc[`ErrorInfo`] 
| This class provides detailed information for errors encountered during XML parsing&period;
| xref:BloombergLP/balxml/Formatter.adoc[`Formatter`] 
| Format XML tags, attributes, and data with indentation and wrapping&period;
| xref:BloombergLP/balxml/FormatterWhitespaceType.adoc[`FormatterWhitespaceType`] 
| This `struct` describes options available when outputting textual data of an element between its pair of opening and closing tags&period;
| xref:BloombergLP/balxml/Formatter_CompactImplState.adoc[`Formatter&lowbar;CompactImplState`] 
| Compact&hyphen;formatter state for printing XML with minimal whitespace&period;
| xref:BloombergLP/balxml/Formatter_CompactImplStateId.adoc[`Formatter&lowbar;CompactImplStateId`] 
| This `struct` provides a namespace for enumerating a set of labels for distinct states of `Formatter&lowbar;CompactImplState`&period;
| xref:BloombergLP/balxml/Formatter_CompactImplUtil.adoc[`Formatter&lowbar;CompactImplUtil`] 
| Utility operations for compact (minimal&hyphen;whitespace) XML formatting&period;
| xref:BloombergLP/balxml/Formatter_Mode.adoc[`Formatter&lowbar;Mode`] 
| This component&hyphen;private utility `struct` provides a namespace for enumerating the set of formatting modes that the `Formatter` can take&period;
| xref:BloombergLP/balxml/Formatter_PrettyImplState.adoc[`Formatter&lowbar;PrettyImplState`] 
| This class provides an in&hyphen;core, value&hyphen;semantic attribute type that maintains state for pretty&hyphen;printing an XML document&period;
| xref:BloombergLP/balxml/Formatter_PrettyImplStateId.adoc[`Formatter&lowbar;PrettyImplStateId`] 
| This `struct` provides a namespace for enumerating the set of labels for distinct states of `Formatter&lowbar;PrettyImplState`&period;
| xref:BloombergLP/balxml/Formatter_PrettyImplUtil.adoc[`Formatter&lowbar;PrettyImplUtil`] 
| This utility `struct` provides a namespace for pretty&hyphen;printing XML&period;
| xref:BloombergLP/balxml/Formatter_State.adoc[`Formatter&lowbar;State`] 
| Component&hyphen;private variant holding compact or pretty formatter state&period;
| xref:BloombergLP/balxml/Formatter_StreamHolder.adoc[`Formatter&lowbar;StreamHolder`] 
| Component&hyphen;private holder for the `bsl&colon;&colon;ostream` used by `Formatter`&period;
| xref:BloombergLP/balxml/HexParser.adoc[`HexParser`] 
| This is a push parser for supported Hex types (`bsl&colon;&colon;vector&lt;char&gt;` or `bsl&colon;&colon;string`)&period;
| xref:BloombergLP/balxml/HexParser_Helper.adoc[`HexParser&lowbar;Helper`] 
| Implementation helper for `HexParser`&period;
| xref:BloombergLP/balxml/ListParser.adoc[`ListParser`] 
| This is a push parser for lists&period;
| xref:BloombergLP/balxml/MiniReader.adoc[`MiniReader`] 
| This `class` provides a concrete and efficient implementation of the `Reader` protocol&period;
| xref:BloombergLP/balxml/NamespaceRegistry.adoc[`NamespaceRegistry`] 
| Mapping that associates a unique integer with each registered namespace URI&period;
| xref:BloombergLP/balxml/PrefixStack.adoc[`PrefixStack`] 
| `PrefixStack` allows associating a unique integer (namespace ID) with prefix&period;
| xref:BloombergLP/balxml/Reader.adoc[`Reader`] 
| This abstract class defines an interface for fast, forward&hyphen;only access to XML data&period;
| xref:BloombergLP/balxml/TypesParserUtil.adoc[`TypesParserUtil`] 
| This `struct` contains functions for parsing input strings using various XML formatting modes&period;
| xref:BloombergLP/balxml/TypesParserUtilImp_ParseBase64.adoc[`TypesParserUtilImp&lowbar;ParseBase64`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesParserUtilImp_ParseDecimal.adoc[`TypesParserUtilImp&lowbar;ParseDecimal`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesParserUtilImp_ParseDefault.adoc[`TypesParserUtilImp&lowbar;ParseDefault`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesParserUtilImp_ParseHex.adoc[`TypesParserUtilImp&lowbar;ParseHex`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesParserUtilImp_ParseList.adoc[`TypesParserUtilImp&lowbar;ParseList`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesParserUtilImp_ParseListElementDefault.adoc[`TypesParserUtilImp&lowbar;ParseListElementDefault`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesParserUtilImp_ParseText.adoc[`TypesParserUtilImp&lowbar;ParseText`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesPrintUtil.adoc[`TypesPrintUtil`] 
| This `struct` contains functions for printing objects to output streams using various formatting modes&period;
| xref:BloombergLP/balxml/TypesPrintUtilImp_PrintBase64.adoc[`TypesPrintUtilImp&lowbar;PrintBase64`] 
| Component&hyphen;private struct&period; Do not use&period;
| xref:BloombergLP/balxml/TypesPrintUtilImp_PrintDecimal.adoc[`TypesPrintUtilImp&lowbar;PrintDecimal`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesPrintUtilImp_PrintDefault.adoc[`TypesPrintUtilImp&lowbar;PrintDefault`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesPrintUtilImp_PrintHex.adoc[`TypesPrintUtilImp&lowbar;PrintHex`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesPrintUtilImp_PrintList.adoc[`TypesPrintUtilImp&lowbar;PrintList`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesPrintUtilImp_PrintListElementDefault.adoc[`TypesPrintUtilImp&lowbar;PrintListElementDefault`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/TypesPrintUtilImp_PrintText.adoc[`TypesPrintUtilImp&lowbar;PrintText`] 
| Component&hyphen;private class&period; Do not use&period;
| xref:BloombergLP/balxml/Utf8ReaderWrapper.adoc[`Utf8ReaderWrapper`] 
| Wrap a `Reader` and check that its input is valid UTF&hyphen;8&period;
| xref:BloombergLP/balxml/Util.adoc[`Util`] 
| Utility functions for `balxml`&period;
| xref:BloombergLP/balxml/ValidatingReader.adoc[`ValidatingReader`] 
| TBD Class description
|===


== Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balxml/operator_lshift-01e.adoc[`operator&lt;&lt;`] 
| Stream insertion operators
| xref:BloombergLP/balxml/operator_eq-06.adoc[`operator&equals;&equals;`] 
| Equality operators
| xref:BloombergLP/balxml/operator_not_eq-0a.adoc[`operator!&equals;`] 
| Inequality operators
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
