Is TosDataSet a descendant of TdataSet?
No. TosDataSet is derived from a TstringList. This is because a TdataSet is essentially a collection of records with fields, whereas, a TosDataSet is a collection of Objects. Each object can be interpreted as a record, but of course it also includes intelligence about itself and built in relationships to other objects.