Right, it works because internally httpHelper is actually checked for the markup format.  the flag isXML is only checked if the transaction is not HTTP and therefore not JSON.  I did think about getting rid of the isXML boolean entirely.