source: icXML/icXML-devel/src/icxmlc/XMLParserImplNR.c @ 3103

Last change on this file since 3103 was 3103, checked in by cameron, 6 years ago

Initial imports for icXML v0.9

File size: 1.2 KB
Line 
1#include <icxmlc/XMLParserImpl.hpp>
2#include <icxmlc/parsers/XMLSchemaLoader.hpp>
3#include <icxmlc/parsers/XMLNamespaceParser.hpp>
4#include <icxmlc/parsers/XMLRecursiveEntityParser.hpp>
5
6XERCES_CPP_NAMESPACE_BEGIN
7
8template<class XMLScannerType>
9void XMLParserImpl<XMLScannerType>::resolveDocumentPageNamespaces()
10{
11
12    if (!fScanner.getDoNamespaces() || fMarkupCount == 0)
13    {
14        return;
15    }
16
17    XMLSchemaLoader xsiParser(NULL); // fMemoryManager
18    XMLNamespaceParser<XMLScannerType> parser(*this, fNamespaceResolver, fReferenceTable, fSymbolTable, xsiParser, fScanner);
19
20    const bool isRoot = (fNamespaceResolver.getScope() == 0);
21
22    parser.resolveNamespaces();
23
24    if (fScanner.getDoSchema())
25    {
26        xsiParser.loadAllSchemas();
27        if (unlikely(isRoot))
28        {
29            fScanner.loadExternalGrammars();
30        }
31    }
32}
33
34// ---------------------------------------------------------------------------------------------------------
35
36XML_PARSER_IMPL(void)::
37setUriId(const size_t index, const gid_t uriId)
38{
39    fUriStream[index] = uriId;
40}
41
42XML_PARSER_IMPL(gid_t)::
43getUriId(const size_t index) const
44{
45    return fUriStream[index];
46}
47
48
49XERCES_CPP_NAMESPACE_END
Note: See TracBrowser for help on using the repository browser.