Discourse, Protest, Violence
discourses frame issues, providing basis for connection and mobilisation of collective action
protest is a prominent method of attempting to set political agendas and advance (movement) goals
violence is a common outgrowth of extremist discourse and collective action—presenting a challenge to societies and a public policy concern for state actors
intensifying expressions of grievances online predict participation in offline violence (Bailard et al. 2024)
climate, COVID-19, EU, gender, migration, terrorism, Ukraine
common discourses can drive activism in different contexts
transnational set of SMOs campaigning against ‘gender’, for example:
investigating this activity through Twitter/X accounts of SMOs in Croatia (9), Germany (26), France (41), Italy (43), and Poland (29)
Most Transnationally Connective Hashtags Per Year
Most Transnationally Connective Hashtags Per Year
Dissemination - getting the word out
Most Transnationally Connective Hashtags Per Year
Dissemination - getting the word out
Most Transnationally Connective Hashtags Per Year
Mobilisation
Most Transnationally Connective Hashtags Per Year
Extension - connecting to other issues
‘alternative news’ sites/channels spread RWE discourses
Heft et al. (2021) look at hyperlinks shared by right-wing online news sites (in Austria, Germany, United States, United Kingdom, Denmark, Sweden) in 2018
degree of transnational linkages differ by context
DE: some orgs. focus mostly domestically; others mostly internationally
SE, US: most orgs., mostly domestically
UK, AT, DK: most orgs., mostly internationally
discourses connect to offline activity: slogans of German RWE protests, some (randomly selected) examples:
„Familien schützen! Homo-Propaganda stoppen!“
“Protect families! Stop gay propaganda!”
Thüringer Heldengedenken
Thuringian heroic commemoration
„Genug ist genug! Stoppt die Überfremdung der Heimat“ (Berlin)
“Enough is enough! Stop the foreign infiltration of the homeland” (Berlin)
Für Meinungsfreiheit – gegen staatliche Zensur
For freedom of expression – against state censorship
Nationale Souveränität erhalten – Deutschland raus aus der EU
Maintain national sovereignty – Germany out of the EU
„Mein Körper gehört mir, schützt endlich unsere Kinder und Alten“
“My body belongs to me, finally protects our children and the elderly”
discourses connect to offline activity, here: the most frequent words in German RWE protest slogans
all terms
discourses connect to offline activity, here: the most frequent words in German RWE protest slogans
National identity
discourses connect to offline activity, here: the most frequent words in German RWE protest slogans
Aspirations and community
discourses connect to offline activity, here: the most frequent words in German RWE protest slogans
Anti-migration
PolDem - xenophobic protests 2000-2015
PolDem - xeno. protests 2000-2015, party participation
PolDem - xenophobic protests 2000-2015
Italy
UK
Germany
Italy = [
{Year: 2008, Num: 42}, {Year: 2009, Num: 117}, {Year: 2010, Num: 269},
{Year: 2011, Num: 233}, {Year: 2012, Num: 196}, {Year: 2013, Num: 225},
{Year: 2014, Num: 228}, {Year: 2015, Num: 190}, {Year: 2016, Num: 138},
{Year: 2017, Num: 54}, {Year: 2018, Num: 26}
]
UK = [
{Year: 2009, Num: 40}, {Year: 2010, Num: 98}, {Year: 2011, Num: 148},
{Year: 2012, Num: 116}, {Year: 2013, Num: 161}, {Year: 2014, Num: 149},
{Year: 2015, Num: 123}, {Year: 2016, Num: 83}, {Year: 2017, Num: 84},
{Year: 2018, Num: 107}, {Year: 2019, Num: 107}
]
Germany = [
{Year: 2005, Num: 187}, {Year: 2006, Num: 151}, {Year: 2007, Num: 129},
{Year: 2008, Num: 103}, {Year: 2009, Num: 137}, {Year: 2010, Num: 85},
{Year: 2011, Num: 142}, {Year: 2012, Num: 132}, {Year: 2013, Num: 186},
{Year: 2014, Num: 219}, {Year: 2015, Num: 491}, {Year: 2016, Num: 330},
{Year: 2017, Num: 107}, {Year: 2018, Num: 129}, {Year: 2019, Num: 174},
{Year: 2020, Num: 151}, {Year: 2021, Num: 89}, {Year: 2022, Num: 143},
{Year: 2023, Num: 196}, {Year: 2024, Num: 170}
]
// Create a dropdown which dataset to display (Inputs.select) - Inputs.radio for radio buttons
// FIRST VERSION: viewof dataset = Inputs.radio(["IT (farpo)", "UnitedKingdom (frgb)", "DE (bt)"], {label: "Dataset"})
viewof datasets = Inputs.checkbox(
["IT (farpo)", "UK (frgb)", "DE (bt)"],
{label: "", value: ["IT (farpo)", "UK (frgb)", "DE (bt)"]}
)
// Choose the corresponding dataset based on the selection
// FIRST VERSION: selected_data = dataset === "IT (farpo)" ? Italy : dataset === "UK (frgb)" ? UK : Germany
// Combine the selected datasets into one array
selected_data = datasets.flatMap(dataset => {
if (dataset === "IT (farpo)") {
return Italy.map(d => ({...d, dataset: "Italy"}));
} else if (dataset === "UK (frgb)") {
return UK.map(d => ({...d, dataset: "UK"}));
} else if (dataset === "DE (bt)") {
return Germany.map(d => ({...d, dataset: "Germany"}));
}
return [];
});// plot as a bar plot
// FIRST VERSION: Plot.plot({
// x: {
// label: "", tickSize: 2, tickRotate: -45,
// tickFormat: d => d.toString() // Converts the year to a string to avoid number formatting
// },
// y: {
// grid: true
// },
// margin: 100,
// marks: [
// Plot.barY(selected_data, {x: "Year", y: "Num", fill: "darkred"})
// ],
// width: 1200,
// height: 600,
// style: {
// fontSize: 30,
// },
// })
// plot as a bar plot with dodged bars colored by dataset
Plot.plot({
width: 1200,
height: 600,
marginTop: 30,
marginRight: 100,
marginBottom: 110,
marginLeft: 100,
style: {
fontSize: "20px",
color: "black",
background: "white"
},
x: {
label: null,
tickSize: 6,
tickRotate: -45,
tickFormat: d => d.toString(),
tickPadding: 8,
color: "black",
line: true
},
y: {
label: "Number",
grid: true,
color: "black",
tickSize: 6,
tickPadding: 8,
line: true
},
color: {
legend: true,
domain: ["Italy", "UK", "Germany"],
range: ["#FF6347", "#4682B4", "#32CD32"]
},
marks: [
Plot.ruleY([0], {
stroke: "black",
strokeWidth: 1
}),
Plot.barY(selected_data, {
x: "Year",
y: "Num",
fill: "dataset"
})
]
})responses to inquiries in Bundestag, e.g.: first half 2026
Gattinara’s Far-Right Protest Observatory: https://farpo.eu/dataset/expanded-cfp-dataset/
Dafnos’s FRGB data: https://etheses.whiterose.ac.uk/id/eprint/28775/
OSCE hate crime monitoring
OSCE hate crime monitoring
OSCE hate crime monitoring
RTV dataset of RWE violence in Western Europe
Recognised by BRD vs. identified by Amadeu Antonio Stiftung
o: officially recognised by BRD
o: identified by Amadeu Antonio Stiftung
Recognised by BRD vs. identified by Amadeu Antonio Stiftung