A Wikidata/DBpedia Geography of Violence

CORE Admin

We have taken data available in Wikidata and DBpedia on 'Military Conflicts' to create this interactive visualisation in nodegoat:


From the outside, it can be a challenge to keep up with all the developments within the ever expanding universe of wiki*/*pedia. So it's good to be reminded now and then of all the structured data that has become available thanks to their efforts:

This looks pretty neat, especially since Wikidata currently has over 947 million triples in their data store. Since battles usually have a place and a date, it would be nice to import this data into a data design in nodegoat and visualise these battles through time and space (diachronic geospatiality ftw).

So we checked the Wikidata sparql-endpoint to see what we can work with. Currently, there are 8049 instances of battles . If we select all the battles that have a location and a date, we are left with 410 battles. This query does not take into account that the location may be stored on a deeper level (as these battles may have a ‘place’ that has a location) and that the date may be stored as a ‘start time’ and ‘end time’. To take this into account, we use the following query:

PREFIX wd: < http://www.wikidata.org/entity/>
PREFIX wdt: < http://www.wikidata.org/prop/direct/>
PREFIX rdfs: < http://www.w3.org/2000/01/rdf-schema#>

SELECT ?subject ?label ?coordinates
(CONCAT(STR(DAY(?date)),"-",STR(MONTH(?date)),"-",STR(YEAR(?date))) as ?displaydate)
(CONCAT(STR(DAY(?start)),"-",STR(MONTH(?start)),"-",STR(YEAR(?start))) as ?displaystart)
(CONCAT(STR(DAY(?end)),"-",STR(MONTH(?end)),"-",STR(YEAR(?end))) as ?displayend)
  ?subject wdt:P31 wd:Q178561 .
  OPTIONAL { ?subject rdfs:label ?label FILTER (lang(?label) = "en") . }
  OPTIONAL { ?subject wdt:P580 ?start . }
  OPTIONAL { ?subject wdt:P582 ?end . }
  OPTIONAL { ?subject wdt:P625 ?coordinates . }
  OPTIONAL { ?subject wdt:P585 ?date . }
    ?subject wdt:P276 ?location .
    ?location wdt:P625 ?coordinates .
   ?subject wdt:P361 ?war .
   ?war wdt:P580 ?start .
   ?war wdt:P582 ?end .

Here we use OPTIONAL to be able to include all available objects (even if they miss a property). Eventually we gathered 2657 battles that have both a location and a date. After a bit of cleaning (you can do this in Open Refine, or even in LibreOffice Calc or Excel), we've imported this set into nodegoat:

You can use the timeline to scroll through time. We’ve added a colour scheme to differentiate between periods in time. Click here to view this in a new window. Clicking a dot opens a dialogue with a link to the object in Wikidata.


Last Friday, we noticed the buzz around the #dbpediadenhaag event and the discussions about the data DBPedia has harvested from Wikipedia. So we queried the DBpedia sparql-endpoint to see what battles they have in store. We found 12674 instances of MilitaryConflict. Of these, 4022 have date and location properties.

SELECT DISTINCT ?battle (SAMPLE(?dates) as ?date) ?location WHERE {
?battle rdf:type dbo:MilitaryConflict .
?battle dbo:date ?dates .
?battle georss:point ?location .

If we look a level deeper for dates and locations we get 10116 battles that have a place and a date reference. The dates are messier than the dates available through Wikidata (as these have been harvested), so a bit more clean up is required here to get a workable list. Once we’ve imported this into nodegoat, we get this result. We can also combine both sets (with a total of 12703 records). And highlight the provenance of each dot.

Most of the differences are a result of the messy dates in DBpedia. For example, compare dbp:date in this DBpedia record with the date in the infobox (which DPpedia harvests) of the original Wikipedia article. Other differences are due to the fact that we picked one location per battle and rounding of the latitude and longitude values.

Furthermore, we found that very little statements in Wikidata had a proper reference and most of them referenced only to ‘French Wikipedia’/‘English Wikipedia’ etc (which was already noted by this report). See this article on the overlaps/differences between Wikidata and DBpedia.

Connecting the Dots

Once we had this up and running we checked what kind of objects relate to the events we found. There seems to be quite some data on the American Civil War in Wikidata, so we made a query to list the people who were present at the battles we identified earlier. This data allowed us to connect battles based on people who moved from one battle to another.

American Civil War in Wikidata. Since we have the data anyway, we can also use it to make a social network visualisation of this.

We also included the births and deaths of these people to be able to produce this visualisation:

Click here to view this in a new window. The 1957 death is William Lundy, see him singled out here.


CSV-files generated and used:


Add Comment

Why would you use red to laste wars 🤔 . It's because happened in middle east. Anyone who see this maps he would thin of danger of this wars. Anyway the west is the bad guy, the wars in the middle east happened by white men. Change the color


The battle of Athens Tennessee isn't listed.


Fascinating idea. Obviously there's going to be a heavy eurocentric slant but I can't really see a way around that. Noticing a few errors in dates though - apparently there were Eastern European anti-communist insurgencies in 600AD?


Great map, but it's Euro centred. The European conflicts only seem to record the major conflicts too. Can it be updated easily to include other regions of the ancient world and fill in the gaps for Europe?

For example, there is only one recorded conflict in the map before 1000AD not involving a Euro power, or the ancient Egyptians. Some of the largest battles in the ancient world occurred in Asia. See https://en.wikipedia.org/wiki/List_of_conflicts_in_Asia

It's a great map, and I mean this. I really like it. Please do update it so I can like it even more


Its safe to say that White Europeans are the most violent people on the planet.


The buttle of Jerusalem 67-70 is missing.


Absolutely fantastic work guys. Let us know how we can help. I'm guessing that we'll have a lot of missing data from the non-european world. Was there a preference in the way you collected data towards europe?

Wikipedia reader1

Great job, but there are a lot of TOTALLY misplaced battle locations. Also some of them have wrong dates. Furthermore, I could not find some Russian Civil war battles and Soviet-Japanese war battles.

Aris Milani

Great map, love it!

Only one mistake: Battle of Bedriacum is in 69 A.D., not 1969 :)

Afu University

Thanks a lot, Great !


War huh what is it good for? Absolutely nothing!

Steve Wenner

I noticed that the Battle of Dimawe was put on the map for the year 604, rather than 1852.

Richard Hope

Excellent work to produce this. There is at least one battle local to me not included. Battle of Gower (Carn Goch), https://en.wikipedia.org/wiki/Battle_of_Llwchwr.
See also further info at http://www.coflein.gov.uk/en/site/404856/details/BATTLE+OF+GOWER%3B+BATTLE+OF+LOUGHOR%2C+CARN+GOCH+COMMON%2C+PENLLERGAER/
Good luck and again, well done.

Excellent Project


Saw link on BBC -- fascinating project but having a play with the data I've spotted an error.

The Battle of Dimawe is recorded on the system as being in AD 604, but the link given makes it clear it was fought in 1852. (I spotted it as the first southern African battle recorded.)

(Being honest this probably shows up a problem with the concept: the error stood out because there is a shortage of records. This probably doesn't mean a shortage of battles.)

Johann Ahlers

How can I assist in more accurately placing the battles having taken place in Southern Africa? (According to your map, a lot of them are located in Pretoria - probably for lack of better info, but there is better information that could be added.)
Would love to contribute.


Беслан закинули на Ангару. Ингушетия южнее и западнее

Steven Nemeth

I miss a lot of battles from the Carpathian Basin. Győri battle against Napoleon, Eger battle against the Turkish army, battle against the Tartars at Muhi,The Siege of Nándorfehérvár (today Belgrade) against Turkish army(since  there every day of the bells at noon),  Matthias  Hungarian king  successful siege of Vienna castle, It is only a few in my memory. This is a very incomplete map.
Seven Nemeth from Hungary

Bird Jaguar IV King of Yaxchilan

Y'all are missing the many, many Pre-Columbian battles and wars listed in Aztec and Inca sources AND the now translated extant corpus of Classic Maya Stone and ceramic inscriptions.  You appear to record the Caracol v. Tikal war in the mid 6th century, but then nothing until the Spanish Genocide of 1492 onward.


Great project, yet it needs enhancing. As far as Eastern Europe is concerned, quite a number of battles is missing, for instance 1919-1920 War with Soviet Russia period, while on the other hand sometimes single dots represent several military activities  hundreds miles apart like during 1806-1815 period.


There is an error for "Battle of Bedriacum". It is shown at 14-04-1969, but actually it was in 69 - https://en.wikipedia.org/wiki/Battle_of_Bedriacum


The battle of Pressburg (907) is placed wrongly around Budapest.
It was around Bratislava...


Not there,
The English Civil War battle of Lansdowne (or Lansdown) was fought on 5 July 1643,

Ole Jørgen Nordhagen

Very impressive! I see that the battle at Hafrsfjord - the final battle during for unification of Norway is missing, due to the lack of an exact geo-location, although scientists agree on the area within a few tens of miles. :P

Jan Ainali

Suggestion: if you replace
?subject wdt:P31 wd:Q178561 .
?subject wdt:P31 ?sub0 . ?sub0 (wdt:P279)* wd:Q178561 .
You will get all different kinds of battles and some more results.
Test: http://tinyurl.com/zakwz6d


Shell House massacre (1994-03-28), position: -27.8, 114.11666667 in Australia. I guess it's a mistake.

Patron Vectras

People love their military history, and have pet factions and battles they will see are missing. Could you add a simple English paragraph explaining what Wikipedia entries need to have their information properly queried? Screenshots of examples and links to properly formatted/filled out info would be awesome.

This way you don't have to keep spending time cleaning data up as much when adding it.Also you might find a military history blog/ magazine that would want to host a definitive version and maintain the data themselves so you don't keep getting bugged to add this battle and that battle for years.

Ghali (Western Sahara)

Thank you. It is great job.


Lol, where Battle of Stalingrad in  World War II. Over 2 millions killed. Soviet solders won WW2 almost without help of *Allies*


Thanks for pointing this out! We answered a similar question here: https://www.reddit.com/r/dataisbeautiful/comments/471hf8/12703_battles_between_2500_bce_and_2015_ce_as/d0ajd5a We've now removed this object and will add it later with the correct location.


Edit: "This example is a *good* one..."

Since I'm posting a second comment, I may as well elaborate. I think this means it was not a one-off error in what I am seeing, but rather has been present for some time, since you seem to have captured it at some earlier instance.

I could be hugely wrong though, so apologies if so.


Very cool visualization. However, there seems to be at least some issue with parsing certain data points.

For example, your map show the "Battle of Hiep Hoa" as taking place in downtown Toronto, rather than Vietnam. http://i.imgur.com/uGA0paa.png

This example is a Google one because it is visible in your screen cap above (caption "DBPedia") as the red dot near Toronto. http://i.imgur.com/fCmWwQp.png

DBPedia ( http://dbpedia.org/page/Battle_of_Hiep_Hoa ) lists lat/long as: 10.914000, 106.316002 which is in Vietnam. However, it appears on your map at and labelled with 43.64256/-79.38713 .

Maria Inés Joo

Brazil conflicts pointed in this map happened when? Please guide me. I do not know of wars in Brazil. Brasilia is in there too but came to exist in 1960 so since then no wars. Which one is wikipedia mentioning to be added to this map? dont rely on wikpedia, cause if you do you result is no reliable


Thanks! We'll use that when we update the data.