Archive for the ‘Generative XML’ Category

python libxml2 dita

Thursday, January 21st, 2016

python libxml2 dita

For correct transformation of DITA files (XML-standard for modular documentation), it is necessary to pull information from DTD (document type definition). In my python code, sometimes I did get this information and sometimes not. Now I’ve tracked the source of instability and corrected the code.


illegal XML characters

Thursday, November 1st, 2012

Sometimes I dump binary data into XML. Being aware of illegal bytes (0-8,B-C,F-1F), I encode everything in base64. But there is a nice alernative way, just revealed by Roger Costello in the xml-dev maillist:

Move any illegal characters into the Private Use Area: for each illegal character add hex E000.

Generative XPath for GWT

Tuesday, July 31st, 2007

Google Web Toolkit (GWT) allows developers to use the Java programming language to build no-compromise AJAX applications. After announcing my project in its discussion group, I got a reasonable question: “Can you explain how this could be used within the GWT client code?”


Generative XPath announces

Monday, July 30th, 2007

I’ve announced Generative XPath in few places. This entry is to assist tracking responses. xml-dev | comp.lang.xml | Google Web Toolkit | google-ajax-discuss | comp.lang.scheme(.lisp) | ssax-sxml.

submission for gttse’2007 is rejected

Saturday, June 23rd, 2007

Unfortunately, I’m not going to speak at gttse’2007 participants workshop. My extended abstract (Recursion-free XPath 1.0 implementation) was rejected, the comment from the reviewers is below.


post-xmlprague notes

Tuesday, June 19th, 2007

I like Prague, it’s a very beautiful city. My contribution to XML Prague 2007:
* paper “Generative XPath
* presentation slides
* poster XML to beautiful documents, and how it looked like

Generative XPath is released

Sunday, June 10th, 2007

Generative XPath (0.9.1) is an XPath 1.0 processor that can be adapted to different hierarchical memory structures and different programming languages. Customizing Generative XPath to a specific environment is several magnitudes of order easier than implementing XPath from scratch.


proposal for XML Prague 2007

Wednesday, February 28th, 2007

I’ve just sent an extended abstract for the XML Prague 2007 conference. I hope it will be accepted.


codegeneration is cool

Wednesday, February 7th, 2007

The expression “1+2+3” is converted to:

    (:list e1 (gx:. gx:unit gx-ffi:number gx:fido (gx:unit 1)))
    (:list e2
      (gx:. gx:unit gx-ffi:number gx:fido
            (:list e1 (gx:. gx:unit gx-ffi:number gx:fido (gx:unit 2)))
            (:list e2 (gx:. gx:unit gx-ffi:number gx:fido (gx:unit 3)))
          (+ e1 e2))))
  (+ e1 e2))


s-expressions vs xml

Wednesday, July 26th, 2006

I’ve dumped some my thoughts to text. Result is a draft of a possible paper: “Towards s-expression based XPath/XSLT implementation“.

XPath Filename Expansion in a Unix Shell

Saturday, July 22nd, 2006

Recently I found the paper “XPath Filename Expansion in a Unix Shell” (HTML, PDF) by Kaspar Giger and Erik Wilde. I’m pleased the authors have referenced my developments (“find with XPath over file system“).

the fall of XPath over filesystem

Thursday, July 13th, 2006

Many XPath tutorials use file paths as an analogy of XPath. While it is ok from a high-level point of view, the analogy is misleading and actual technical implementations (one, another, my) are kludge (at least, my implementation). Here are some issues.

GTTSE 2005 photos

Sunday, August 21st, 2005

Finally, my GTTSE 2005 photos are online. The start page is approximately 2Mb, and larger photos are of 300Kb-1Mb size. Unfortunately, I can’t describe how great was the event. Instead, read “Resume from GTTSE Summer School” by Steen Brahe.

x:apply-templates: “with-param” works

Tuesday, June 21st, 2005

Finally, “with-param” in the Scheme function “x:apply-templates” works. It took some time because I forget an experience with making “mode” working. Again, parameter name should be in the dictionary. Unfortunately, namespaced parameters doesn’t work, probably due to a bug of libxslt. Reported, waiting.


Tuesday, June 14th, 2005

From the mail discussions: “This is actually a Scheme VM in byzantine synchronisation over a P2P network with some administration free (root-less) permission control system.” The point of interest for me is “Scheme VM”.

XSieve is submitted to Google Summer of Code

Wednesday, June 8th, 2005

I’ve submitted my new project XSieve to the Google’s Summer of Code program.


generative XML paper

Tuesday, June 7th, 2005

I’ve published the article “Reusing XML Processing Code in non-XML Applications” ([PDF]) version 1.0 and posted announces to different forums.


feedback on the GPCE’05 article

Sunday, June 5th, 2005

Some time ago I submitted an article to the Generative Programming and Component Engineering (GPCE’05) conference. Article is rejected, but to my great surprise I’ve got useful and inspiring comments.


Troubles make code stronger

Friday, May 27th, 2005

A small test case revealed weak points in my code. Fixing each point was making the code worse and worse. Fortunately, I got insight. Why not to use a fake node? I did it, and code became simpler, hundred lines smaller, and I automatically fixed a weak point for which I had had no idea for a workaround.

getting access to a firewalled subversion repository

Thursday, May 26th, 2005

A small firm has a Subversion server located in a local network. The network is secured by a firewall. The task: give access to the Subversion server from the outside, both to Linux and Windows users. The solution should be as secure as possible.