intertwingly

It’s just data

xml:base support


The version of REXML included within ruby 1.8.2 does not appear to contain xml:base support.  However, this is not much of a problem in Ruby, as such support can easily be added.

This code checks for the method named defined by DOM3, and if not found, adds it directly to the REXML::Element class.  I also include four unit tests, ones that focus more on different combinations of xml:base usage than on the correct operation of URI.join.

While the tests passed, as I wrote both the code and the tests, this begs the question as to whether or not I have interpreted the spec correctly.  As libxml2 has a reputation for speed, completeness, and correctness, and has a Python interface, I simply ported the test The results don’t disappoint.

I made a similar attempt with JDK 5.0, but with less positive results.  Apparently in one of the tests, getBaseURI returns null.  If anybody has any insight into either the problem or in what I did incorrectly, I would appreciate it.