The top seed from Serbia saw off the sixth-seeded Spaniard 6-4 6-0 to set up a last-four meeting with home favourite Andrea Petkovic.
The German came from a set down to defeat her compatriot Annika Beck, the eighth seed, 4-6 6-3 7-5.
The other semi-final will be between fifth-seeded Czech Lucie Safarova and Romania's Simona Halep, the seventh seed, after they recorded contrasting wins today.
Safarova had to battle against Slovenia's Polona Hercog before grinding out a 7-6 (7/5) 3-6 6-4 win.
Halep brushed aside Galina Voskoboeva of Kazakhstan 6-4 6-1.