{"id":2697,"date":"2020-06-24T21:37:11","date_gmt":"2020-06-25T01:37:11","guid":{"rendered":"http:\/\/codinggorilla.com\/?p=2697"},"modified":"2020-06-24T21:37:11","modified_gmt":"2020-06-25T01:37:11","slug":"xpath-3-1-engine-with-antlr-parse-trees-update","status":"publish","type":"post","link":"http:\/\/165.227.223.229\/index.php\/2020\/06\/24\/xpath-3-1-engine-with-antlr-parse-trees-update\/","title":{"rendered":"XPath 3.1 engine with Antlr parse trees &#8212; Update"},"content":{"rendered":"\n<p>It&#8217;s taken a few weeks, but the daily grind has resulted in a new grammar in Antlr for XPath version 3.1, and a translation of the Eclipse engine to search the Antlr parse trees (<a href=\"https:\/\/github.com\/kaby76\/xpath-csharp\" class=\"ek-link\">code<\/a>). This will come in handy to partially replace the hardwired code in C# in Antlrvsix to perform grammar refactorings. There is still much work to be done:<\/p>\n\n\n\n<ul><li>Polishing the XPath engine to work well.<\/li><li>Create an expression language to tell the transformation system what nodes found in the parse tree (using the XPath engine) how to rewrite the tree nodes.<\/li><li>Rewrite the refactorings in Antlrvsix in this new language and engine.<\/li><\/ul>\n\n\n\n<p>&#8211;Ken, June 24, 2020<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s taken a few weeks, but the daily grind has resulted in a new grammar in Antlr for XPath version 3.1, and a translation of the Eclipse engine to search the Antlr parse trees (code). This will come in handy to partially replace the hardwired code in C# in Antlrvsix to perform grammar refactorings. There &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/165.227.223.229\/index.php\/2020\/06\/24\/xpath-3-1-engine-with-antlr-parse-trees-update\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;XPath 3.1 engine with Antlr parse trees &#8212; Update&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/posts\/2697"}],"collection":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/comments?post=2697"}],"version-history":[{"count":0,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/posts\/2697\/revisions"}],"wp:attachment":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/media?parent=2697"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/categories?post=2697"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/tags?post=2697"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}