用C++实现一个XML parser的必要工作。

考虑一个完整的XML Parser一般由几部分组成:

必要组件:

1. DOM 接口定义,以及DOM MODEL的实现。
2. 一个XML词法分析器,用于将XML字符流转换成TOKEN流。
3. 一个XML PARSER,将TOKEN流组织成DOM MODEL.
4. 一套在DOM NODE中遍历的数据结构和算法,NodeIterator,TreeWalker.
5. 一个DTD的词法分析器和DTD PARSER.
6. 一个XPATH表达式语言的编译器,将XPATH表达式编译成AST树。
7. 一个XPATH引擎,根据XPATH AST对DOM 树执行运算。
8. 一个XSLT引擎,完成XSLT的transform。
9. 如果需要支持XHTML,那么CSS PARSER也是必须的。

辅助组件:

1. 内存管理机制。
2. 支持各种编码和网络环境的File Reader.
3. COM封装。

你可能感兴趣的:(用C++实现一个XML parser的必要工作。)