Currently, when an attribute has no value, it is still serialized with an value of zero-length string. Is this behaviour correct?
I rather think nothing should be serialised is more correct. At least the document size would be smaller if most of the attributes are not initialised. With the current behaviour, it also means the resulting parsed result will have to be checked for zero-length attributes value.