improve schema parsing