xml parser, almost ready