when tool source is XML. We can't really encode these attributes as JSON
in XML, and while we could make it work it doesn't feel great to force
tool authors to use such a hypothetical syntax.
I think we still keep all the nice validation here, it's just a little
more lenient.