Split parse and validate to reduce duplicate validation work.