[refactor] xml parser: build objects from xml stream