NVDL Support in Validator.nu

Validator.nu uses (a patched fork of) oNVDL. Yet, so far the NVDL part hasn’t worked.

I enabled NVDL today. It is mostly untested. There’s a bug tracker.

The reason why the NVDL part hasn’t worked is that the oNVDL suite and Jing that oNVDL is based on don’t work properly with application-provided entity resolvers. Since Validator.nu takes untrusted input, it would be unacceptable to resolve file: and jar: URIs using the default resolver. It would even be scary to resolve http: URIs using the JDK’s naïve built-in HTTP client. As a result, I have to patch every oNVDL subsystem to do the right thing with custom resolvers. I hadn’t gotten around to fixing the NVDL subsystem until now. While I was at it, I applied the same fix to the NRL subsystem.

The built-in compond document presets don’t use NVDL. This feature is for those who use custom schemas.