As I understand it, we generate XML in the pattern library by reading some YAML, passing it through a SWIG template that generates some XML. Could we not just use XML directly rather than YAML? I'm not sure I understand what using YAML and SWIG buys us, and it makes it harder to see what XML is actually being used.