Violence in western Chinese region of Xinjiang kills 21