A given geo location may have an infinite number of names over time and in differing contexts, e.g. Istanbul vs Constantinople. This may occur at all levels of the cultural place hierarchy, e.g. Rosewood, unincorporated community near 48° 11′ 22″ N, 96° 17′ 25″ W:
- Uknown, with various groups and cultures identified as in the region at differing points of time.
- Louisiana, New France, France
- [Upper Louisiana, Louisiana, Viceroyalty of New Spain, Spain]
- Indian Reserve, British Territory, United Kingdom
- Province of Quebec, British Territory, United Kingdom
- Territory Northwest of the River Ohio, United States
- [four different intermediary territories of the USA]
- Pembina Cty, Minnesota, United States
- [three county changes and a surveying error, two townships]
- Rosewood, New Solum Twp, Marshall Cty, Minnesota, United States
Therefore I suggest that locations be identified by a common standard, such as GeoJSON, but with the name being a completely separate table of objects. Each name should include include some context, like a date range it was/is in use, and the language in which it was/is used (e.g. from above, the second is in current English, current French would have it La Louisiane, Nouvelle-France, La Royaume de France[fr.WP], while contemporaneously it might have had different orthography[WT] and be further divided between haute- and basse- Louisiane.)
Even within the GeoJSON objects there may be overlap. Take Pembina County, which was created in 1849 in what was then the Minnesota Territory, the larges of five original counties. Pembina was partitioned a couple of times before Minnesota achieved statehood, in 1858, at which point Pembina County became part of Dakota Territory. The portion which remained in Minnesota was renamed Kittson county, and underwent a final partition. Pembina County North Dakota, likewise was partitioned multiple times, though it also grew when Dakota Territory had its western border extended – 11 counties in North Dakota were originally part of Pembina.
This raises a question of durability. Because each change creates a unique GeoJSON polygon, should one create an entity which includes all the variations of its borders over the period of its identity? Probably, thus creating a single object with which many place names may connect; I will call this a Location, and a name/context would be a Place. The Location serves as a library of GeoJSON objects and the Places which refer to them (although this may become inefficient; I will need to think about this.)
Most likely I am re-inventing a wheel, but having skimmed RFC 7946 I just do not see anything which quite covers the use case of many related polygons to many place names.