I'd like to incorporate their relative reference resolution functions into my
in-browser test suite at <http://skew.org/uri/uri_tests.html>, but I don't
know when I'm really going to get around to doing it, so don't hold your
Currently I only have 3 implementations being tested:
- one I wrote
- one TimBL wrote
- a fork of one Nathan Rixham wrote (I had to fix an infinite loop bug)
None of them are perfectly compliant implementations.
Also, as noted on my test page, I noticed that I was expecting some "wrong"
results for one of the obscure edge cases (base URI has a scheme + a relative
path, no leading "/"). Actually what I am expecting is the reasonable result;
it's just not what RFC 3986 says we should get.
When RFC 3986/STD 66 was in development, Graham Klyne had reported this issue
and suggested that the resolution algorithm be adjusted to provide a more
reasonable result. There was no argument, so I assumed that the final draft
would incorporate the necessary fixes. I was wrong.