if (Field <> Default) then Builder.Add('field', Field);
in eine Methode auslagern, da prüfen und wenn True, vorher schauen, ob das Objekt angelegt wurde und wenn nicht, dann das BeginObject und danach das Add

Am Ende auch nur das EndObject, wenn das Objekt existiert.
Ein Therapeut entspricht 1024 Gigapeut.