Project |
Integrate Expat parser into Axis2/C soap engine |
Student Name |
Varuna Jayasiri |
vpjayasiri at gmail dot com |
Axis 2/C currently supports the XML parsers libxml
|
|
I will introduce Expat XML parser to AXIS2/C. Expat is probably the world fastest XML parser and it is a very robust parser. Expat will be plugged into Axis2/C through a wrapper using the XML reader/writer interface of Axiom.
This project will consist of developing a pull layer and a Expat XML writer/reader wrapper for Axiom.
Expat is a push parser and Axiom interface is for a pull parser. Therefore a pull layer should be introduced to bridge them. The pull layer should be implemented with internal call-back handlers on top of Expat. The main challenge would be adding a pull interface to Expat without reducing its performance.
With the introduction of the functions
XML_StopParser |
and
XML_ResumeParser |
it is possible to stop and resume parsing easily enabling pull parsing. These functions had been added specifically for this purpose. However, these functions will become obselete with Expat 3 release
|
There are some third party pull layers on Expat; therefore it is possible to examine how they have done it. Expat is also working on a Pull API project and it would be possible to get their ideas on this as well.
2. Unit test cases.
Analyze the Expat parser and the interface of the Axiom and design a pull-layer for expat. A great attention will be given for performance of the parser at this stage.
-until end of May
Deliverables: Design documentation
Implement the pull layer for Expat and the wrapper to bridge it with Axiom. All code will be tested using unit tests.
-until mid August
Deliverables: A working Expat integration
Running complete tests with the help of the community and doing final touches to the code and documentations.
-until end of August
Deliverables: Completed Expat integration with documentation and test data
I’ve been very enthusiastic about computers from my early ages and I participated in International Olympiad in Informatics 4 times and won a gold medal and 2 silver medals. I also participated at ACM regional’s in Kanpur
|
|
I am studying at the Faculty of Engineering, University of Moratuwa, Sri Lanka. I have been blogging for around 1 year – Something Different, and I participate in Topcoder
|
Although I haven't been involved in open source projects before I have been doing similar projects at my workplaces, and I have about 5 years of experience of programming with C/C++. Therefore, I think I will be able to develop a robust Expat integration for Axiom.
<<FootNote>>