public JSONObject transform(XMLStreamReader source, TransformationContext context) {
try {
StringWriter writer = new StringWriter();
XMLStreamWriter jsonWriter = new BadgerFishXMLStreamWriter(writer);
XMLStreamSerializer serializer = new XMLStreamSerializer();
serializer.serialize(source, jsonWriter);
source.close();
return new JSONObject(writer.toString());
} catch (Exception e) {
throw new TransformationException(e);
}