28#include <xercesc/sax2/SAX2XMLReader.hpp>
29#include <xercesc/sax/EntityResolver.hpp>
30#include <xercesc/sax/InputSource.hpp>
88 void parse(std::string systemID);
125 XERCES_CPP_NAMESPACE::InputSource*
resolveEntity(
const XMLCh*
const publicId,
const XMLCh*
const systemId);
A handler which converts occuring elements and attributes into enums.
Encapsulated SAX-Attributes.
const bool myHaveFallback
LocalSchemaResolver(const bool haveFallback, const bool noOp)
XERCES_CPP_NAMESPACE::InputSource * resolveEntity(const XMLCh *const publicId, const XMLCh *const systemId)
SAX-reader encapsulation containing binary reader.
bool parseSection(int element)
Continue a progressive parse started by parseFirst until the given element is encountered.
std::unique_ptr< IStreamInputSource > myInputStream
std::string myValidationScheme
Information whether built reader/parser shall validate XML-documents against schemata.
SUMOSAXReader(GenericSAXHandler &handler, const std::string &validationScheme, XERCES_CPP_NAMESPACE::XMLGrammarPool *grammarPool)
Constructor.
std::pair< int, SUMOSAXAttributes * > myNextSection
void setHandler(GenericSAXHandler &handler)
Sets the given handler as content and error handler for the reader.
void parseString(std::string content)
Parse XML from the given string.
LocalSchemaResolver myLocalResolver
bool parseFirst(std::string systemID)
Start parsing the given file using parseFirst of myXMLReader.
const SUMOSAXReader & operator=(const SUMOSAXReader &s)
invalidated assignment operator
std::unique_ptr< std::istream > myIStream
LocalSchemaResolver mySchemaResolver
void setValidation(std::string validationScheme="")
Sets a new validation scheme and applies the validation settings to the XML reader.
~SUMOSAXReader()
Destructor.
SUMOSAXReader(const SUMOSAXReader &s)
invalidated copy constructor
std::vector< SumoXMLTag > myXMLStack
The stack of begun xml elements.
GenericSAXHandler * myHandler
void parse(std::string systemID)
Parse the given file completely by calling parse of myXMLReader.
XERCES_CPP_NAMESPACE::SAX2XMLReader * myXMLReader
LocalSchemaResolver myNoOpResolver
XERCES_CPP_NAMESPACE::XMLGrammarPool * myGrammarPool
Schema cache to be used for grammars which are not declared.
XERCES_CPP_NAMESPACE::XMLPScanToken myToken
void ensureSAXReader()
Builds a reader, if needed.
bool parseNext()
Continue a progressive parse started by parseFirst.