1. Not human readable in serialized form. Unless you have concerns about traffic or storage costs, human readable formats win.<p>2. Requires code generation. Not a big hassle especially if your IDE hides it, but a hassle nevertheless.