[While filing a bug against an older version of the package, I
don't seem to find anything in the Debian changelog of
2.7.8.dfsg-2+squeeze1 that'd suggest that any change was made to
the behavior described below.]
The xmlSaveUri () function appears to format the URI's with
:-delimited paths incorrectly, by adding a superfluous // (which
is simple to resolve, see below), and %-encoding the :'s
themselves (much harder, I guess), effectively preventing
urn:-scheme URN's from being used. (As in: catalogs.)
Consider the output of the example program (MIME'd):
URI urn:example:animal:ferret:nose
scheme urn
opaque (null)
authority (null)
server (null)
user (null)
port 0
path example:animal:ferret:nose
query (null)
fragment (null)
cleanup 0
query_raw (null)
xmlSaveUri urn://example%3Aanimal%3Aferret%3Anose
Cf. the example in RFC 3986, section 3 [1]: