Depending on whether or not the resulting YAML is supposed to be human-readable[1], you can just produce JSON output, since YAML 1.2 is a superset of JSON. I did that at one of the places I worked in at the time, and it worked very well.
[1]: I personally think that JSON is plenty readable, but a lot of people seem to disagree.