for Delphi 2010 and up, RecordSaveJSON/RecordLoadJSON and Dynamic Arrays will use enhanced RTTI for JSON serialization: no need to call TextWriter.RegisterCustomJSONSerializerFromText() and maintain text-based serialization on newer versions of Delphi :)