added a functioning xml parser