3

I want to do a small volunteer project of a war cemetery in my hometown and to make it available to public.

However, I never did this so maybe you can have some suggestions to me. The hard part I encounter is that there are multiple soldiers buried in a single grave.

My first intention was to simply generate point shapefiles for each grave and to add the name, rank, plot and d.o.b and d.o.d. in the attribute table, but the problem is I have multiple soldiers for each grave, and it only takes one attribute entry per point.

Is it a better method to do this?

2
  • Are you limited to ArcGIS Pro? Why?
    – til_b
    Commented Apr 5 at 13:03
  • 1
    @til_b I am not limited to ArcGIS, just that I used it through school more than QGIS and I thought to do it in ArcGIS (forgot about licensing) so now I will stick to QGIS to be sure to avoid any legal trouble, if any. Thank you for your help!
    – gis1234
    Commented Apr 5 at 13:28

2 Answers 2

6

The usual way to do this, is to create two tables:

  1. A featureclass with the location of the grave, and some ID value
  2. A table that contains information about who is buried, and a ID value that references a grave

If you use a File Geodatabase rather than shapefiles, you could then create a relationshipclass between these tables, so that if you click on a grave, you also get a list of who is buried there.

The tables could look like this:

Graves:

Location ID
Point 1
Point 2

Buried:

GraveID Name Rank Other field
1 John Doe
1 Jane Doe
2 Other
4

This is a question of relational database design, even if your database consists of a shapefile and a text file.

The general idea is to create a table for the graves and give the graves an ID number. Store any information that is relevant for the whole grave in this table.

Then, create a table without geometry for your soldiers. This can be a simple CSV text file, or a table inside a SpatiaLite/SQLite database.

This soldier table has a soldier ID and a grave ID that references the grave this soldier lies in. Store any info specific to this soldier (rank, name, dates of birth and death, death location, ...) in this table.

I would recommend using a SpatiaLiteDB, make a graves table with columns grave_id, grave_location, geometry (use the geometry datatype for that) and a soldiers table with soldier_id, grave_id, name, keep it very simple and start from there.

Terms to search for are entity relationship modeling, 1:n relation, SQL.

For volunteer work I would strongly recommend QGIS, as it is free. You won't want to use valuable funds for the software license.

The QGIS Database manager would be my tool of choice, https://docs.qgis.org/3.34/en/docs/user_manual/plugins/core_plugins/plugins_db_manager.html .

For the joining on the QGIS user interface see https://docs.qgis.org/3.34/en/docs/user_manual/working_with_vector/joins_relations.html#setting-relations-between-multiple-layers .

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.