experimental version with XML support