Rafael Nadal has reached the Mexican Open final, 15 years after winning his first ever title at the same competition.