Novak Djokovic outlasted Jannik Sinner over five sets and will now face Carlos Alcaraz with a chance at an unprecedented 25th Grand Slam title.