The lxml approach doesn't work for a schematron from the ConnectingEurope repository. A validation attempt fails with following message:
Fail: This implementation of ISO Schematron does not work with schemas using the "xslt2" query language.
It seems there are several people searching for such a solution, as also in this request, but there is no answer so far. Is there anyone able/willing to sched some light onto this, maybe with a code example in Python or C/C++?