About 500 people, including ethnic Uighurs, have marched through Geneva chanting 'Shame on China' and accusing its government of tyranny and "terrorist" repression.

Demonstrators waved light-blue flags representing East Turkistan, some Uighurs' preferred name for Xinjiang and protesters held photos of loved ones who have gone missing or were taken into custody by Chinese authorities.

China rejects Western criticism of suspected mass detention and heavy surveillance of Uighurs dismissing the allegations as alternative facts.