[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Parse xslt to xdm in xslt

  • From: Mukul Gandhi <gandhi.mukul@gmail.com>
  • To: Dimitre Novatchev <dnovatchev@gmail.com>
  • Date: Tue, 24 Sep 2019 09:54:31 +0530

Re:  Parse xslt to xdm in xslt
Hi  Dimitre,

On Mon, Sep 23, 2019 at 9:51 PM Dimitre Novatchev <dnovatchev@gmail.com> wrote:
The FXSL library (at https://sourceforge.net/projects/fxsl/files/FXSL%20for%20XSLT%202/FXSL%202.0/) contains an LR parser -- the function lr-parse() in the file func-lrParse.xsl

it operates on an XML document that contains the LR-1 parsing tables generated from the BNF of the language.

FXSL provides a modification of Berkely YACC, which, given its ordinary input -- the BNF of an LR-1 unambiguous language, produces its parsing tables -- but in the XML format expected by  func-lrParse.xsl

I can make available the set of BNF rules describing XPath 2.0, (or directly the LR parsing tables for it) which in the past I successfully used for parsing arbitrary XPath 2.0. If I remember well, it contains about 209 rules.

Now, the lr-parse() function expects as one of its parameters a function that it will call (callback) every time a rule is reduced. One must write such functions, depending on what is the wanted processing -- for example one may want the recognized language sentence to be executed immediately -- so the programmer will write an interpreter. In another case we may want to construct a syntax tree of the parsed sentence, which can be used as an intermediate stage in a compiler.  
I
n your case, you can provide a callback that creates the desired XDM.

Another argument to this function is a lexical analyzer function -- that actually reads the raw text and emits a stream of terminal symbols.

The whole (the zip files don't contain the latest content) fxsl-xslt2 library can be downloaded using this command:

cvs -z3 -d:pserver:anonymous@a...:/cvsroot/fxsl co -P fxsl-xslt2

I am planning to move the whole FXSL library from sourceforge to github or bitbucket -- hopefully soon.

That's a great piece of work (I definitely, have heard it before). What practical use cases do you envision, for this implementation? Or, was it an academic exercise?



--
Regards,
Mukul Gandhi


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.