Sri Lanka's Angelo Mathews bats during the Cricket World Cup match against India at Headingley in Leeds.
Sri Lanka won the toss and is batting first against India in Leeds.
India captain Virat Kohli said he would have batted first, too.
India made two changes after beating Bangladesh by 28 runs on Tuesday in Birmingham.
Yuzvendra Chahal is rested for left-arm spinner Kuldeep Yadav, and allrounder Ravindra Jadeja makes his first appearance in this World Cup for fast bowler Mohammed Shami.
Sri Lanka made one change after beating the West Indies by 23 runs on Monday in Chester-le-Street. Veteran allrounder Thisara Perera is in for Jeffrey Vandersay.
Conditions are dry but cloudy overhead.
Sri Lanka: Dimuth Karunaratne (captain), Kusal Perera, Avishka Fernando, Kusal Mendis, Angelo Mathews, Lahiru Thirimanne, Dhananjaya de Silva, Thisara Perera, Isuru Udana, Lasith Malinga, Kasun Rajitha.
India: Rohit Sharma, KL Rahul, Virat Kohli (captain), Rishabh Pant, MS Dhoni, Dinesh Karthik, Hardik Pandya, Ravindra Jadeja, Bhuvneshwar Kumar, Kuldeep Yadav, Jasprit Bumrah.
A gritty century by Angelo Mathews lifted Sri Lanka to 264-7 against India after a top-order collapse on Saturday, the final day of the World Cup group stage.
Sri Lanka started the tournament as rank outsiders and finished sixth of the nine teams, registering one of their three wins against the world's top-ranked one-day international side and hosts England.
It was a superb display by the underdog Black Caps, who came into the match on the back of three straight defeats by Pakistan, Australia and England and only qualified for the semi-finals on net run-rate, while India topped the 10-team group stage.
Top seed Novak Djokovic and second seed Stefanos Tsitsipas on Wednesday kept on course for a showdown in Saturday’s final of the Dubai Duty Free Tennis Championships.
Multan Sultans beat Peshawar Zalmi by six wickets in a Pakistan Super League held at the Multan Cricket Stadium on Wednesday. Chasing 124, they completed
Avishka Fernando and Kusal Mendis hit centuries as Sri Lank thrashed the West Indies by 161 runs in the second one-day international to clinch the series on Wednesday.