The current parser dumps the contents of each model. It would be helpful to offer an option where the parsed class is instead pushed to the dataframe with an option field to be used as index.
Additionally, SoftwareEvents should respect the generic notation by allowing either a inner model to be used or simply to allow a generic SoftwareEvent[T] to be passed as the full model to parsed.