Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p><strong>I implemented an XPath 2.0 parser entirely in XSLT 2.0</strong> three years ago.</p> <p>I used my <strong><a href="http://fxsl.cvs.sourceforge.net/viewvc/fxsl/fxsl-xslt2/f/func-lrParse.xsl?revision=1.7&amp;view=markup" rel="nofollow noreferrer">LR Parsing Framework</a></strong> in <strong><a href="http://fxsl.sf.net" rel="nofollow noreferrer">FXSL</a></strong> and this was not so difficult. The grammar is quite big -- 209 rules, if I remember well. I used a modificationn of YACC (done by me) which I call <strong><a href="http://fxsl.cvs.sourceforge.net/viewvc/fxsl/fxsl-xslt2/Tools/YACCX/" rel="nofollow noreferrer">Yaccx</a></strong> to generate the parsing tables as XML. These are the input for <strong><a href="http://fxsl.cvs.sourceforge.net/viewvc/fxsl/fxsl-xslt2/f/func-lrParse.xsl?revision=1.7&amp;view=markup" rel="nofollow noreferrer">the general LR Parser</a></strong>, written in XSLT.</p> <p><strong>For such kind of project you need to allocate at least 6 months full time, maybe 1 year</strong>. The difficulty is in implementing the enormous function library (<strong><a href="http://www.w3.org/TR/xpath-functions/" rel="nofollow noreferrer">F &amp; O</a></strong>).</p> <p><strong>Also, XPath is not a standalone language -- it must be hosted by another language</strong>. Due to this reason I didn't use this parser for anything meaningful, as I didn't have the access, influence and possibility to alter an existing hosting language.</p> <p>So, be prepared for all these difficulties.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload