8#ifndef INCLUDED_BALXML_READER
9#define INCLUDED_BALXML_READER
807#include <balscm_version.h>
813#include <bsl_cstddef.h>
814#include <bsl_functional.h>
815#include <bsl_ostream.h>
816#include <bsl_streambuf.h>
821class ElementAttribute;
861#ifndef BDE_OMIT_INTERNAL_DEPRECATED
919 const char *namespaceUri)>
990 virtual int open(
const char *filename,
const char *encoding = 0) = 0;
1006 virtual int open(
const char *buffer,
1008 const char *url = 0,
1009 const char *encoding = 0) = 0;
1025 virtual int open(bsl::streambuf *stream,
1026 const char *url = 0,
1027 const char *encoding = 0) = 0;
1059 int index)
const = 0;
1068 const char *qname)
const = 0;
1080 const char *localName,
1081 const char *namespaceUri)
const = 0;
1093 const char *localName,
1094 int namespaceId)
const = 0;
1261 return stream << Reader::nodeTypeAsString(value);
Definition balxml_elementattribute.h:289
Definition balxml_errorinfo.h:353
bool isWarning() const
Definition balxml_errorinfo.h:530
bool isError() const
Definition balxml_errorinfo.h:536
bool isFatalError() const
Definition balxml_errorinfo.h:542
Definition balxml_prefixstack.h:137
Definition balxml_reader.h:835
virtual bool isEmptyElement() const =0
virtual const char * nodeName() const =0
void dumpNode(bsl::ostream &os) const
virtual void setPrefixStack(PrefixStack *prefixes)=0
virtual const char * nodeNamespaceUri() const =0
virtual int advanceToNextNode()=0
virtual int open(bsl::streambuf *stream, const char *url=0, const char *encoding=0)=0
bslma::ManagedPtr< bsl::streambuf > StreamBufPtr
Definition balxml_reader.h:903
virtual NodeType nodeType() const =0
virtual int open(const char *filename, const char *encoding=0)=0
virtual bool isOpen() const =0
bool isError() const
Definition balxml_reader.h:1244
virtual const char * nodeLocalName() const =0
virtual int lookupAttribute(ElementAttribute *attribute, const char *localName, int namespaceId) const =0
virtual void setOptions(unsigned int flags)=0
virtual int lookupAttribute(ElementAttribute *attribute, const char *localName, const char *namespaceUri) const =0
virtual int nodeDepth() const =0
virtual unsigned int options() const =0
Return the option flags.
virtual XmlResolverFunctor resolver() const =0
Return the external XML resource resolver.
virtual void setResolver(XmlResolverFunctor resolver)=0
bsl::function< StreamBufPtr(const char *location, const char *namespaceUri)> XmlResolverFunctor
Definition balxml_reader.h:920
virtual const char * nodeBaseUri() const =0
virtual const char * nodePrefix() const =0
bool isFatalError() const
Definition balxml_reader.h:1250
static const char * nodeTypeAsString(NodeType nodeType)
virtual const char * documentEncoding() const =0
virtual int lookupAttribute(ElementAttribute *attribute, const char *qname) const =0
virtual const char * nodeValue() const =0
virtual int lookupAttribute(ElementAttribute *attribute, int index) const =0
NodeType
Definition balxml_reader.h:839
@ e_NODE_TYPE_CDATA
Definition balxml_reader.h:847
@ BAEXML_NODE_TYPE_DOCUMENT_TYPE
Definition balxml_reader.h:872
@ e_NODE_TYPE_ENTITY
Definition balxml_reader.h:849
@ NODE_TYPE_END_ELEMENT
Definition balxml_reader.h:897
@ NODE_TYPE_XML_DECLARATION
Definition balxml_reader.h:899
@ NODE_TYPE_PROCESSING_INSTRUCTION
Definition balxml_reader.h:887
@ BAEXML_NODE_TYPE_TEXT
Definition balxml_reader.h:864
@ NODE_TYPE_ENTITY_REFERENCE
Definition balxml_reader.h:885
@ NODE_TYPE_NONE
Definition balxml_reader.h:881
@ BAEXML_NODE_TYPE_WHITESPACE
Definition balxml_reader.h:875
@ NODE_TYPE_WHITESPACE
Definition balxml_reader.h:894
@ BAEXML_NODE_TYPE_XML_DECLARATION
Definition balxml_reader.h:880
@ e_NODE_TYPE_DOCUMENT_TYPE
Definition balxml_reader.h:853
@ BAEXML_NODE_TYPE_NONE
Definition balxml_reader.h:862
@ NODE_TYPE_CDATA
Definition balxml_reader.h:884
@ e_NODE_TYPE_TEXT
Definition balxml_reader.h:846
@ NODE_TYPE_END_ENTITY
Definition balxml_reader.h:898
@ BAEXML_NODE_TYPE_CDATA
Definition balxml_reader.h:865
@ BAEXML_NODE_TYPE_SIGNIFICANT_WHITESPACE
Definition balxml_reader.h:876
@ BAEXML_NODE_TYPE_END_ENTITY
Definition balxml_reader.h:879
@ e_NODE_TYPE_DOCUMENT_FRAGMENT
Definition balxml_reader.h:854
@ NODE_TYPE_DOCUMENT_FRAGMENT
Definition balxml_reader.h:892
@ e_NODE_TYPE_ELEMENT
Definition balxml_reader.h:845
@ e_NODE_TYPE_XML_DECLARATION
Definition balxml_reader.h:860
@ BAEXML_NODE_TYPE_END_ELEMENT
Definition balxml_reader.h:878
@ BAEXML_NODE_TYPE_ENTITY
Definition balxml_reader.h:867
@ NODE_TYPE_NOTATION
Definition balxml_reader.h:893
@ e_NODE_TYPE_SIGNIFICANT_WHITESPACE
Definition balxml_reader.h:857
@ e_NODE_TYPE_WHITESPACE
Definition balxml_reader.h:856
@ e_NODE_TYPE_NOTATION
Definition balxml_reader.h:855
@ e_NODE_TYPE_PROCESSING_INSTRUCTION
Definition balxml_reader.h:850
@ BAEXML_NODE_TYPE_PROCESSING_INSTRUCTION
Definition balxml_reader.h:868
@ NODE_TYPE_DOCUMENT_TYPE
Definition balxml_reader.h:891
@ NODE_TYPE_COMMENT
Definition balxml_reader.h:889
@ NODE_TYPE_DOCUMENT
Definition balxml_reader.h:890
@ BAEXML_NODE_TYPE_DOCUMENT
Definition balxml_reader.h:871
@ e_NODE_TYPE_NONE
Definition balxml_reader.h:844
@ NODE_TYPE_ENTITY
Definition balxml_reader.h:886
@ NODE_TYPE_SIGNIFICANT_WHITESPACE
Definition balxml_reader.h:895
@ BAEXML_NODE_TYPE_COMMENT
Definition balxml_reader.h:870
@ e_NODE_TYPE_DOCUMENT
Definition balxml_reader.h:852
@ e_NODE_TYPE_END_ENTITY
Definition balxml_reader.h:859
@ BAEXML_NODE_TYPE_DOCUMENT_FRAGMENT
Definition balxml_reader.h:873
@ NODE_TYPE_ELEMENT
Definition balxml_reader.h:882
@ BAEXML_NODE_TYPE_ELEMENT
Definition balxml_reader.h:863
@ NODE_TYPE_TEXT
Definition balxml_reader.h:883
@ e_NODE_TYPE_ENTITY_REFERENCE
Definition balxml_reader.h:848
@ e_NODE_TYPE_END_ELEMENT
Definition balxml_reader.h:858
@ e_NODE_TYPE_COMMENT
Definition balxml_reader.h:851
@ BAEXML_NODE_TYPE_ENTITY_REFERENCE
Definition balxml_reader.h:866
@ BAEXML_NODE_TYPE_NOTATION
Definition balxml_reader.h:874
bool isWarning() const
Definition balxml_reader.h:1238
virtual const ErrorInfo & errorInfo() const =0
virtual int getLineNumber() const =0
virtual int getColumnNumber() const =0
virtual bool nodeHasValue() const =0
Return true if the current node has a value and false otherwise.
virtual int open(const char *buffer, bsl::size_t size, const char *url=0, const char *encoding=0)=0
virtual PrefixStack * prefixStack() const =0
virtual int nodeNamespaceId() const =0
virtual int numAttributes() const =0
Forward declaration.
Definition bslstl_function.h:934
Definition bslma_managedptr.h:1182
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition balxml_base64parser.h:150
bsl::ostream & operator<<(bsl::ostream &stream, const ConfigSchema &schema)