Hi Xalan-dev list I'm one of the committers on PsychoPath XPath 2 engine and would like to offer my input where I can help if this is a viable way.
First off, I must confess that while I know XSLT pretty well, I've not studied Xalan-J in depth. However, from looking over the design document for Xalan-J version 2, I can spot three major obstacles in consuming PsychoPath from Xalan-J: 1) PsychoPath is not "streamy" yet 2) Type informations is not part of current interfaces. 3) How would the XLST-to-bytecode (XSLTC) fit in? Ad 1: This would have to come from PsychoPath itself, with inspiration from the Xerces-J XPath engine. Work has not been underway yet, which leads to point 2: Ad 2: The DOM, NodeIterator and Schema interfaces aren't rich enough for the type information we need in XPath 2 (and thus XSLT 2). Ad 3: I've tried a proof-of-concept of making a compiler in PsychoPath, but this is not under development at the moment. Can the compiler fall-back to the interpreted implementation? On top of this, there is interest (from within the PsychoPath project itself) to clean up the API quite a bit. The current way we deal with static and dynamic context is just not well thought out. It's not a big issue, but in the interest of embeddability of the XPath2 enigne itself, the notion of dynamic and static context needs to be cleaned. Other than that, I would think that merging the two projects is not required at all, Xalan-J should be able to simply consume PsychoPath once we have a decent API which can satisfy the requirements of both Xalan and Xerces. If not, I thing it would signify a design fault in our API. Let's discuss (I've joined this mailing list for this reason)! -Jesper > > -------- Original Message -------- > Subject: Re: Re: implement XPath 2.0 function for xalan > Date: Sun, 28 Mar 2010 08:39:20 +0800 > From: ustbcoder <ustbco...@gmail.com> > Reply-To: xalan-dev@xml.apache.org > To: xalan-dev@xml.apache.org <xalan-dev@xml.apache.org>, > xalan-dev@xml.apache.org <xalan-dev@xml.apache.org> > > > Hi > > Yeah, i have checked out PsychoPath source code,i think it is a good idea to > merge PsychoPath with Xalan, it will support nearly all the XPath 2.0 > implemention for Xalan. After that, my task is to implement the other XSLT > 2.0 specification for Xalan,this solution really speed this project up much. > > > Gui Xun Long > > > 2010-03-28 > ustbcoder > 发件人: David Carver > 发送时间: 2010-03-27 12:42:41 > 收件人: xalan-dev@xml.apache.org > 抄送: > 主题: Re: implement XPath 2.0 function for xalan > You guys may be able to speed some of this up by leveraging the PsychoPath > XPath 2.0 processor that is at Eclipse. > > It is already being used by Xerces-J for XSD 1.1 Assertion support. Why > re-invent the wheel if you can leverage something that already exists. > > http://wiki.eclipse.org/PsychoPathXPathProcessor > > PsychoPath already is XML Schema Aware, leverages Xerces-J 2 and passes about > 99.9% of the Xpath 2.0 test suite. > > Dave > > On 03/26/2010 09:25 PM, ustbcoder wrote: >> >> Hi Michael, >> >> Starting with utility parts is regular way to implement a new recommendation >> specification. But i think, functions is a very practical part. If i finish >> it first,may be some guys can go it into service. Months ago,i was working >> with a XSLT project based on Xalan, i need some XPath 2.0 functions,but i >> have to finished them by Xalan extension mechanism one by one, it is a >> boring work, so ,i think, if some one implements these XPath 2.0 functions >> already, how beautiful the world is! >> >> But i want to say that implementing functions is just a pre-handler job for >> Xalan's XSLT 2.0 implemention job, it must be done sooner or later, so i >> have started it,it won't go wrong. Then start with which parts,schema >> change,sequences change or some utility parts, i am not very sure, so,i need >> your help,all of you can give me some advises. >> >> >> 2010-03-27 >> ustbcoder >> 发件人: Michael Ludwig >> 发送时间: 2010-03-27 04:39:44 >> 收件人: xalan-j-us...@xml.apache.org >> 抄送: >> 主题: Re: Re: implement XPath 2.0 function for xalan >> xunlong gui schrieb am 26.03.2010 um 23:27:15 (+0800): >> > 1.implements all the XSLT 2.0 functions which do not need sequences >> > and XSLT 2.0 schema support >> Leaving aside (W3C XML) schema awareness, the new type system of XPath >> 2.0 seems the most fundamental change from 1.0 to 2.0, so I wonder >> whether focussing on the utility parts would be a good start for any >> effort to go to 2.0? >> -- >> Michael Ludwig > >