I am not sure about the Python side, but on the Java side there is already a glitch here which is due to a limitation in Java.
The OrbitType is an enumerate and its fixed elements (CARTESIAN, CIRCULAR, EQUINOCTIAL and KEPLERIAN) all override the convertType method. The return value of convertType is declared as a generic Orbit at the OrbitType enumerate level, and is specialized for each element (for example the return type of CARTESIAN.convertType is declared to be CartesianOrbit, the return type of KEPLERIAN.convertType is declared to be KeplerianOrbit). Despite this, it seems that when someone calls the method, the compiler sometimes does not sees the specialization and still considers the return type is only the generic Orbit. The generic Orbit class does have getA, getDate, getE and many other methods because they can be implemented for all orbit types, but not for example getPerigeeArgument() because it would not be defined for CircularOrbit.
So despite it seems odd, you may sometime have to cast the return by yourself, because you are assured that KEPLERIAN.convertTypewill return a KeplerianOrbit, but the compiler does not understands it.
On the Java side that oddity is addressed by Sealed Classes in Java 17. But it will probably be a while until we can use it because support for Java 8 runs through 2030.