Représentation JSON de la carte avec une clé complexe

Je veux sérialiser en JSON suivantes (java) structure de données:

class Machine {
  String name;
  Map<PartDescriptor, Part> parts;
}

class PartDescriptor {
  String group;
  String id;

  hashCode()
  equals()
}

class Part {
  String group;
  String id;
  String description;
  String compat;
  ...
  ...
}

Ce serait représentation JSON d'un Machine?

Aussi (facultatif), point de me une JSON pour Java sérialiseur/deserializer qui serviront à appuyer la représentation

source d'informationauteur Op De Cirkel