An annotation-driven approach for marshalling and unmarshalling data.