GRABOSM / Grab-Data

Grab Project Page
23 stars 5 forks source link

Mapping Street Names in Thailand #88

Open GRABOSM opened 3 years ago

GRABOSM commented 3 years ago

Objective: The goal is to add the missing street names in Thai cities & towns. Grab data team will make the necessary edits by using KartaView street imagery.

image Image source: Wikipedia

Regions we are currently reviewing/mapping:

Bangkok Nakhon Ratchasima Chanthaburi Lamphun
Chonburi Phitsanulok Nakhon Sawan Maha Sarakham
Ubon Ratchathani Rayong Hat Yai Khon Kaen
Khon Kaen Roi Et Buri Ram Pattaya
Chiang Mai Ratchaburi Lampang
Chachoengsao City Nong Khai City Nakhon Pathom
Chiangrai Surin Surat Thani
Kanchanaburi Krabi Trang
Nakhon Si Thammarat Hua Hin Uttaradit
Phetchaburi Udon Thani Yala

Workflow: We will be following the Thai Road names mapping conventions wiki - Street Names, TH ​ OpenStreetMap Changeset Comment: Mapping missing street names in Thailand https://github.com/GRABOSM/Grab-Data/issues/88Satellite Imagery: Maxar Premium Imagery, Esri World Imagery, Bing Plugins: KartaView, Mapillary ​ Team involved: The Grab Data team ​ Do reach out to us if you have any questions or suggestions on the same. Happy Mapping!

cc: @geochetan @jinalfoflia @mishari

stephankn commented 3 years ago

A general remark on mapping street names:

geochetan commented 3 years ago

Thank you @stephankn for your feedback and suggestions, we do have a few follow up questions to ensure we understand and it’ll help us make our workflows better.

We agree with you and we always prefer to follow local knowledge and local conventions. We will make sure to write the full name on OSM and in case we encounter an issue, we will share them in this ticket. If there are any cases where an abbreviation has been added and it’s not resolved yet, please do let us know.

Furthermore, It’ll be very helpful if you can share or point us to an existing source which has a list of common abbreviations used in TH. We will make sure to include that in the existing policies for mapping.

List of common abbreviations:

St. = Street
Dr. = Drive
Ave. = Avenue
Rd. = Road
Cl. = Close
Blvd. = Boulevard
Crt./Cres. = Crescent
Hwy./Hway/Hi-way = Highway
Pkwy./Prkwy. = Parkway
Ct. = Court
Ln. = Lane
Terr. = Terrace
Cir. = Circle
Rdg. = Ridge
Pl. = Place
Pk. = Park
AH = Asian Highway
E’way = Expressway
Sq. = Square
Int. = Interior
Ext. = Extension
Blk. = Block
Subg. = Subdivision
Brg. = Bridge
Skwy. = Skyway

Would this mean that we need to write "Soi"/"Road" for every street name even if it’s not shown on the sign? It’ll be great if you could share some examples of road names that we should be adding ”Soi” and the ones we should not.

Does the Thai script name need to be in both name and name:th or is it ok if only in name:th? Would that also mean that we should essentially use name:en for English variations of the street name?

Agreed, makes sense.

Do we need a tool to transliterate the name, or do you mean to provide a name:en when there is a transliterated name on the road name board?

Could you please share example/s? Do you also mean symbols when mentioning graphical designs?

Agreed

stephankn commented 3 years ago

For abbreviations, be very suspicious if there is a dot on the sign. I have no exhaustive list. A common one is "รร." for Rongrian/school. Not certain how frequently this is on street signs.

Usually a Soi goes off a specific main road and is then named after that. Very common is to simply count the streets. Users of the data want to find it. For example you want to order a Taxi. You not send them to "Soi 15", you have to be more specific. For example way 156261413, you call it "Sukhumvit Soi 15". Even better (more correct) would be "Sukhumvit Road Soi 15", but as some map rendering is not shortening the name before display, some mappers do abbreviation in the data already. Or due to limited space on the street sign the name was shortened there already and mappers did not enter the full name. In this specific case the tagging in Thai script is correctly stating "ถนนสุขุมวิท ซอย 15", Then English name is badly tagged. Blame the initial creator, which seems to be me 10 years ago.

Searching in nominatim.openstreetmap.org for this name will return the matching way.

Unfortunately there is no way for the software to know whether it is "Sukhumvit Road" or something else. So searching for "Sukhumvit Road Soi 15" is more problematic, as expansion is not possible. You have to rely on fuzzy search.

So best is to have the data as complete as possible, as shortening is possible based on rules. Expansion is not.

So include as per above example "ถนนสุขุมวิท" and not simply "ซอย 15". This full expansion is very important if the street connects two main roads, so the name of the main road is also not guessable by the geometry. In existing data this is often a problem. As some streets have alternative names (often on the sign in parentheses), add these in alt_name/alt_name:en.

For streets you typically have the same Thai script content of "name" duplicated in "name:th". Cases where you have English names as main name and Thai script secondary are more common on brand names, like names of Hotels. The name:en and name:th are primary sources for maps in a specific language, as there is no reliable way to detect the language from the name tag alone. Thai script is easier, as they have specific code points, but OSM is an international database.

For name:en, frequently you have a RTGS name on the sign already. If missing, you can leave it away, as there is software which can create RTGS on rendering. If you are certain enough about the RTGS output you can add it to the name:en to enable search for this feature. As with the name in Thai script, do expand to the full name. As space on signs is limited, the names there are often shortened. Probably rare on street names, but be careful about transliterated English names in Thai script when turning that to RTGS. I started a dictionary on it in https://forum.openstreetmap.org/viewtopic.php?id=73253

Do write it in a proper capitalization. So do not use all-caps, even if it was printed like this on the sign. Example:

image

nitinatsangsit commented 3 years ago

That image from stephank is something that I've seen them in many places and it's annoying. Many Local Administrative Organizations have recently installed this type of sign, which is somehow grammatically incorrect.

In Thai, every street name must have a prefix: ถนน (thanon, road) or ซอย (soi). It's strange to start a street name with a proper noun. "ถนนสุขุมวิท ซอย 15" is also incorrect and it should be "ซอยสุขุมวิท 15". When it is called in navigation software, like "เลี้ยวซ้ายเข้าสู่ซอยสุขุมวิท 15" (Turn left to Soi Sukhumvit 15), it is practical. Calling it by both noun ถนน and ซอย is something like calling it with both street and boulevard or avenue, etc. in the same name. (Except for some road names that already end with a number, adding the soi again is acceptable to distinguish the number that is part of the main road's name from the soi number, such as "ซอยพระรามที่ 2 ซอย 18".)

However, things become more confusing because some of the BMA's new signage is written like "สุขุมวิท ซ. 15 / Sukhumvit Soi 15".This writing style, I also believe that it stems from the sign's limited space and the need to shorten the text on the sign. However, I'm confident that "ซอยสุขุมวิท 15" is more correct, aside from some of BMA's signs that are still written in this manner, all of the official documents and the civil registration are also writing in "ซอยสุขุมวิท 15" style too.

How should we deal with this? What I have done in Bangkok is putting the "ซอยสุขุมวิท 15" and "Soi Sukhumvit 15" to the name and name:en, and "สุขุมวิท ซอย 15" and "Sukhumvit Soi 15" to the alt_name and alt_name:en, also put the old soi name (name without the number, displayed in smaller text beneath the main text in the signage) to the old_name and old_name:en

In addition, for main road, "ถนนสุขุมวิท" and "Sukhumvit Road" is already a consensus, while "Thanon Sukhumvit" can be added to name:th-Latn.