It's simpler (at the time of writing: 789 LoC vs 2889 LoC) lxml can be bypassed, which can work around issues where lxml breaks namespaces of e.g. identityrefs Support for TLS sessions And a few ...