I’ve created a syntax grammar XML validator script to help when I’m writing language definition extensions for Nova. I often make trivial mistakes in my XML, and I was using
xmllint to check for well-formed XML whenever Nova refused to load my extension.
Now I also added Relax NG schemas based on the excellent extension documentation. With the schemas,
xmllint can also detect misspelled element names, missing attributes, and other structural problems.
I put it on Github in case it is useful for other extension developers. It doesn’t require any other software to be installed since
xmllint comes with macOS.