xml printer impl