XML api: save only when valid