J-10 first flight 1998, production 2002, that's 4 years. JF-17 first flight 2003, production 2007, that's 4 years. J-31 first flight 2012, production likely 2016 or 2017.
Tejas Mk 2 still won't have DSI. In terms of capability, the two may be similar. In terms of aesthetics, JF-17 takes the lead.
J-10B is more advanced than Rafale. With J-31 coming soon, PAF will likely save up on J-31 rather than ordering J-10B. J-31 is the future replacement for PAF's F-16. Block 2 JFT rolls off the lines by around June.