Hi Divye, This is some addition to what Senaka and Dimuthu mentioned. Since you need to prepare a good proposal it is very important to identify what you can and cannot do for this project. The best thing to do is go through the XPath spec and some other XPath implementations and identify the common usecases and important areas. Then try to come up with an API addition to Axiom for XPath. This API should cover the full spec, but for the summer of code project you do not need implement all. But implementing the basic XPath support is crucial. You can discuss it with your mentor or in this list.
Thanks, -Manjula. On Sat, 2008-03-22 at 20:22 +0530, Senaka Fernando wrote: > Hi Divye, > > You will have to integrate XPath support into AXIOM and you can make use > of the utilities made available in Util as Dimuthu says. > > You should ideally make use of the XML reader/write API, but the AXIOMs > XPath implementation should be independent of the underlying parser. > Meaning that we should be able to pluggin any new parser through a wrapper > and make use of your implementation. > > You need not create a free-floating component which would be somewhat > tougher than the embedded implmentation AFAIU. > > Apache Axis2/C Axiom is and Apache AXIOM (Java) are based on the same > architecture, which has somewhat deferred due to C not being an OO > Langauge. But, you are strongly adviced to follow the Apache AXIOM > implementation as much as possible. I believe that [1] should be really > useful in this concern. > > [1] http://ws.apache.org/commons/axiom/apidocs/index.html > > Regards, > Senaka > > > Hi Divye, > > > > XPath expression evaluation is a major missing part of Axiom C > > implementation, and it is a really good GSOC project. So glad to see > > you are interested in that. > > > > Answering to your questions according to my knowledge, XPath > > implementation will be depend on axis2 util and axiom project and > > will be part of axiom. You can check this for a good axiom/c > > tutorial[1], > > > > Axiom is given a xml reader/writer api so the complexities of xml > > parsing is hidden from the Axiom, And this allow us to integrate many > > xml parsers to the axiom, currently we have guththila and libxml2 > > intergrated. So in the xpath implementation you will be working on top > > of axiom or the xml reader API, I think this depends on your design. > > > > In the same time you can use the axiom/java[2] XPath implementation > > as a reference. And it is really important you follow that, since > > axiom/c is a reimplementation of axiom/java. > > > > > > [1] http://ws.apache.org/axis2/c/docs/om_tutorial.html > > [2] http://ws.apache.org/commons/axiom/ > > > > Thanks > > Dimuthu > > > > On Fri, Mar 21, 2008 at 5:22 PM, Divye Kapoor <[EMAIL PROTECTED]> > > wrote: > >> Hello all, > >> I'm a Second Year student of Computer Science at the Indian > >> Institute of Technology, Roorkee and I'm interested in pursuing a GSoC > >> project with the ASF. Though I have no experience with Axis and Axiom, > >> I have programming experience in C/C++ and other scripting languages > >> and have practical experience with XML and its related technologies. > >> > >> The posting on the ideas page > >> regarding an implementation of the XPath specification for Axiom did > >> not detail the nature of integration expected with the rest of the > >> code base. Would it be simply (so to speak) a free-floating component > >> or be integrated with some of the other parts of the Axis or Axiom > >> code? > > > > Also, what kind of XML handling support is already integrated > >> into Axiom? > >> Please bear with me if my questions seem naive. > >> > >> Yours sincerely, > >> Divye Kapoor > >> > >> > >> > >> -- > >> Whether the chicken crossed the road or the road moved beneath the > >> chicken depends upon your frame of reference. > >> My official web site: > >> http://www.iitr.ernet.in/studenthomepages/homepages/061305 > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [EMAIL PROTECTED] > >> For additional commands, e-mail: [EMAIL PROTECTED] > >> > >> > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]