Well, I guess it would be an overkill though. Using JsonWriter will complicate the function (just swapping JsonFormat for JsonWriter won't work) but I though we wanted to use this dsl just for json-like documents, so basic key/value mappings, numbers, booleans, arrays.. in that case DefaultJsonProtocol should bring in scope everything we need.