optional lxml support