Multi-language/default language naming conventions

Hi all,

is there any consensus on the presence and/or use/content of name, name:en and name:fr tags within the predominantly English speaking provinces?
Things are obviously different in Quebec and Nunavut. I’m primarily asking regarding Manitoba.

I would make sure the name tag was present and filled for backwards-compatibility reasons. In predominantly English speaking provinces, I would fill it with the English place name if known/available, unless it’s a specifically French-Canadian company etc. (common default name).

I would consider the name:en/name:fr tags to be encouraged, but only secondary to the name tag.

Would I be correct in my assumptions or am I missing something or is there a different consensus to consider?

Thanks,
methusalem

As far as I understand it, the extent of the consensus is that current tagging, whatever it is, is sort of good enough, and shouldn’t be changed or edit-warred about without extensive discussion.

Also I would personally put quite a lot of weight on the autonomy of provincial and regional OSM communities to discuss and determine how to tag things in their areas, even if this means that there’s no national convention – the alternative (being ruled from the centre of the universe :wink: ) seems worse.

This sounds good to me in general, but I’m sure there’s some exceptions and tricky parts, for example:

As I understand it New Brunswick is also tricky, constitutionally as well as in practice. And as another example, City of Ottawa’s practice is to use both languages on its signs (“prom. Beauséjour Dr.”) but this is not used in OSM which uses English only in the tag name=Beauséjour Drive.

Is there a particular reason you’re asking? I think I saw some mixed-language street names in Winnipeg (e.g. this way name=Boulevard Provencher Boulevard), is that why?

City of Ottawa’s practice is to use both languages on its signs (“prom. Beauséjour Dr.”) but this is not used in OSM which uses English only in the tag name=Beauséjour Drive.

I find this suspicious, when the name signs on the ground are in 2 languages we usually reflect this in the name-tag.

Also in national parks: the signs are bilingual all along the Trans-Canada Highway through Banff National Park, including for this exit, but the ways indicate only English. I was wondering whether to add the French names somehow.

Destination signage in national parks is often bilingual, but the roadways themselves typically are unilingually signposted in English. At least, that’s the case in the mountain parks (Banff, Jasper, Kootenay, Yoho, Glacier, Mt. Revelstoke, Waterton). E.g. Wolf Street has no signage calling it “rue Wolf” or “rue Loup”.

There is some destination signage that will call out Highway 1 as “Trans-Canada Highway” and “Route transcanadienne”, and (e.g.) in Banff N.P. some of the destination signage will call out road names in both, like Highway 1A as both “Bow Valley Parkway” and “Promenade de la Vallée-de-la Bow”.

In reality, speaking from a boots-on-the-ground perspective as a (close-ish [Calgary]) local who’s also English-French bilingual… pretty much no one you’d encounter in Banff N.P. would ever call anything in the park by its French name. The great majority of Banff town residents, workers and visitors would scarcely recognize e.g. “Promenade de la Vallée-de-la Bow” and be able to tell you where it is, if you asked them aloud en français. I would tend to put both English & French names in the official_name=* or nat_name=* tags, if anything.

That said, Lac des Arcs—20 km east of the Banff park boundary—is categorically “Lac des Arcs” (/læk deɪz‿ɑrk/), even in English. :wink:

I know you’re more specifically asking about Manitoba, but with respect to Alberta—and I think you could say the same generally goes for Saskatchewan—I would make the general comment that English is predominant, but place names are not necessarily going to be English. There are a few places where French is commonly spoken and French names probably ought to be within the name=* tag with equal precedence to the English names, or even take precedence over the English. For instance some villages, towns and cities are officially bilingual (e.g. Beaumont, Legal (/ˌləˈɡæl/, not /ˈliː.ɡəl/), Falher and Plamondon), and often have bilingual signage.

Some nodes are by their very nature ‘amenities’ more for francophones than anglophones, and go by their French names (e.g. l’Alliance Française), especially French-language schools (e.g. École Ste-Marguerite-Bourgeoys, which yours truly added to the map a number of years ago :stuck_out_tongue:).

Some things go by a French name regardless and there is no “accepted” “English” equivalent, e.g. the aforementioned Lac des Arcs, or the lake, hamlet and county of Lac La Biche (/ˌlæk lə ˈbɪʃ/ or /ˌlæk lə ˈbiːʃ/). These are never “translated” to English; Lac La Biche is categorically never ever ever EVER called “Doe Lake”.

I think you could mostly extend the same principles to names of things in Manitoba. However, Manitoba is admittedly trickier because the political history surrounding the use of the French language is much more fraught than elsewhere in Western Canada… I would tread very, very carefully wherever you may happen upon something that already has French or both French and English in the name=* tag.

1 Like

Yes, from my visit, I definitely got the sense that the bilingual signs along the highway were pro forma. Maybe destination:fr=*; some routers might actually do something useful with that if the user happens to have everything in French already. Otherwise, I agree that the English would be the sole default language in that park at least.

Yes, very much so. Same reason signage at YYC is bilingual.

Found this thread having started on adding house numbers in Winnipeg. Looking at the names in the official open data from the city, the names of the streets are in English. The street signs are bilingual (which is fine) and someone has indeed put both name:en and name:fr tags on the street back in 2016 (which is great!).

However, they also changed the names of the streets to be things like Rue Propser Street which makes the addresses on the houses not match the streets unless they also move to this weird bilingual mashup.

Even worse, however, are results such as Avenue Niverville Avenue. What?!

Here are some relevant changesets demonstrating this, which feels like borderline vandalism: it is not what locals are likely to refer to it as, it’s not what appears on promotional materials in the area (e.g. websites), and it probably won’t help anything if used as a postal address. :confused:

IMO: name:en and name:fr make sense, but smashing both things as seen in Winnipeg is nonsensical. Should those changes be reverted?

Some relevant changesets in Winipeg:

Does each street sign literally have this hybrid name on it? As a renderer developer, I’d rather it be explicitly entered as two coequal names instead of a hybrid name, but there is precedent for this. On the other hand, if the street name signs carry both names separately and they’re just saving some typing, that would be pretty silly indeed. :slightly_smiling_face:

Yes, and it is, at least imho, horrible. It looks odd when rendered on a slippy map, and it doesn’t work with official postal or cadastre data.

Well, the street names are being clever. They have the street type part (Rue, Street, Road, Avenue, etc.) in small capital letters on either side of the street name. It’s the city being clever in being bilingual, making the signs look nice, and having the minimal amount of writing on them.

However … and this is the critical point to me … those are NOT the names of the streets! It is not “Avenue Niverville Avenue” in any language. It is “Avenue Niverville” in French, and “Niverville Avenue” in English. These streets also, and correctly, have both name:en and name:fr tags, so this information is correctly there.

So what are the names of these streets? I would go back to what one uses in postal addresses, what the city officially uses in its cadastre dataset (spoiler: it’s the English names!), and what people on the street use (Winnipeg has ~0.1% native French speakers, and less than 10% of the population speaks French at all … so no surprise: it’s the English names).

Whether the map defaults to common on-the-street usage or official data, it’s English in both cases.

Slaving to the literal text on street signs is just misunderstanding what the content on them is intended to be.

Oh, and fwiw, my actual proposal would be this:

Edit the streets in Winnipeg to carry the English official names, keeping the name:fr tags for the French versions and dropping the name:en tags as would then be duplicate.

This would reflect official usage as well as on-the-street local custom, with no loss of actual data.

Just for completeness: a geocoder or QA tool should be able to cope with the fact that a addr:street=* matches some name:*=* or alt_name=* on the nearby street rather than name=*, and it should also be capable of handling properly delimited multi-value lists in any key. If not, that’s a shortcoming in the software that would affect plenty of situations besides this one.

I see your point, though I’ve also mapped in some ethnic enclaves (mostly in the U.S., but sometimes in Canada) where the street names are dually signposted and it’s less clear that the English name is a clear favorite, to say nothing of other features like buildings and POIs. I guess it depends how you define a local at that point, or how much we care about database consistency. After all, name tags are also used for wayfinding during turn-by-turn navigation, not just when searching for addresses.

Please don’t drop the name:en tag. OSM doesn’t really have a way to say what the language of the name tag is, by duplicating the value of the name tag in the name:en tag the data consumer can easily determine that the name tag value is English.

5 Likes

Ok. That makes sense!

Yyyyyeaaaaah, this is precisely what I was getting at with the comment above, which I’ll quote again:

The parts of Winnipeg in your example changesets are in the area of St. Boniface, which was a separate city until 1971 and is considered “the heart of Franco-Manitoban culture”. Louis Riel is buried at St. Boniface Cathedral.

Your statistics about the proportion of French speakers in Winnipeg are a distortion of the facts. Per the 2016 federal census, 1,085 out of 768,685 total residents—about 0.1%—speak only French. 26,295 respondents spoke French as their first language, and 2,965 spoke both English and French as their first languages, thus about 3.8% of the population are “native French speakers”. In addition to the aforementioned 1,085 respondents who speak only French, 79,820 speak both English and French, thus about 10.5% of the populace “speaks French”. This is all kind of moot anyway, as you’re just assuming the entirety of Winnipeg is a uniform mélange which it obviously isn’t, but it’s important to understand that you’re operating from false premises.

Contrary to your assertions that “what one uses in postal addresses” is the English name, when I search the Canada Post database for the postal code for l’École Précieux-Sang for example, and input “209 Rue Kenny”…

… it works just fine. :wink:

In point of fact, the official names of the street in St. Boniface are both the English and the French, equally. Part 9 of the City of Winnipeg Charter deals with the provision of services in both official languages, and Section 458(3) quite clearly states:

All street signs and the words on all traffic signs erected or maintained in the St. Boniface Ward and, where feasible, elsewhere in the designated area shall be in both official languages.

(I hope it’s not lost on you that the Manitoba Laws website shows both the English and French text side-by-side:neutral_face:)

As per the law, in fact it’s not just the street signs that are French-English bilingual: so too are the traffic signs.


This common parlance in both English and French is reflected in things like this tourist map (PDF link), which shows the street names in St. Boniface in the exact same “Rue _______ Street” format which you’ve characterized as “horrible”.

So, when you wrote earlier,

… what exactly do you think the intent is? :thinking:

2 Likes

Zooming out a bit from Winnipeg,

I’ve also seen this kind of tagging in New Brunswick. For example, this intersection in Fredericton has “Rue York Street” intersecting with “Aberdeen Street” on one side and “Rue Aberdeen” on the other. The latter scheme has the visual effect of the rendered map alternating the languages, and I recall also seeing it elsewhere (either somewhere else in New Brunswick, or in Winnipeg?) - though of course it makes quite a mess of routing directions.

I think it’s practical as well as considerate to reflect on why mappers are already doing this kind of tagging in Canada, and what kind of best practices we could suggest that would respect their aims while keeping OSM data useable, maintainable, and as consistent as possible. (Practical because mappers keep on doing it. Considerate given the history and often the official status.)

Certainly we should encourage to have name:en and name:fr tags with appropriate values wherever there appears to be an official or semi-official bilingual name. The name tag for these streets can and should be discussed, possibly regionally.

To give an example of a prominently bilingual region mapped fairly well in OSM: the Brussels standard seems to be “[French name] - [Dutch name]” (e.g. “Rue de la Vierge Noire - Zwarte Lievevrouwstraat” or “Quai de Willebroeck - Willebroekkaai”), which to me doesn’t seem better visually, and doesn’t resolve issues of which language to put in the first position. But I think this illustrates that a tag like name=Avenue Niverville Avenue is not without precedent in OSM. And I’m not sure if anyone here would consider Brussels-style name=Avenue Niverville - Niverville Avenue a better alternative.


The linked thread/post from around 2022 Multiple delimited names in the name tag - #101 by ezekielf suggests semicolon-delimiting the names. This would work well for applications that care to display these names nicely. Unfortunately a lot of default OSM tools - the default carto renderer, the default routers on osm.org - probably won’t implement displaying these names nicely. And while we can and should repeat “don’t tag for the renderer”, it’s unrealistic to stick our heads in the sand and be surprised when some people don’t particularly like their street showing as “rue Percy;Percy Street” when they load up openstreetmap.org. (And I’m not sure it would save us from edit wars about the order.) So we could adopt the semicolon as a solution, but if we do that, we’d probably also want to promote a map viewer (tile server for openstreetmap.ca? apps? etc) that can actually use it well.

1 Like

To provide the name in the two official languages of the country in a way that works well for street signs.

A label on a map is not a street sign. They exist in entirely different form factors and different use cases.

Street signs are not (currently, anyways) dynamic: you make them once and put them up on a physical object (pole, wall, …). They have limited space and need to be immediately and comfortably readable by humans. They aren’t vocalized by a machine. They aren’t included in routing instructions. They can, and do (e.g. in this case), mix fonts and sizes as the layout and exact (“pixel perfect”) presentation is predefined on manufacture.

None of that is true about a GIS database.

I’m all for having the languages represented and included in the database. But adopting the approach used on the entirely different form factor of a street sign in a database designed primarily for machines to utilize is mistaking the medium (physical street signs) for the message (the content).

For a computer rendering, routing, and vocalizing things having the names in a single language that tracks with how people actually use these names, having these separated into completely language-specific entries is a far more appropriate approach.

(On the claim about “how people actually use these names”, ask yourself: does anyone called it Rue York Street when talking to another person? Or do they use either Rue York or York Street?)

As a side note, while I am from Canada and spent most of my life there, I currently live in an intensely multilingual country (4 official languages, plus English as a de facto lingua franca) and have daily contact with these kinds of issues.

There are cities here where streets have names in two different languages and they separate them on the map with a ‘/’, but the names of the streets are actually translations (“Chemin du Chasseur” vs “Jägerweg”) and both are used in dailiy life (it’s common to hear conversations being had in both languages at the same time, with one participant speaking French while the other speaks German). In that use case, having both in the name: field makes sense as there actually are multiple names for single streets in daily use.

But then go to cities which are also officially bilingual (e.g. in kantons Fribourg, Bern, Valais) which do not have these features and the street names are in a single language on OSM, again reflecting common usage.

But hey, I don’t live in Winnipeg. Maybe most of the people there do use both language forms for streets on the regular. Maybe they really do say things like “I live on Avenue Niverville Avenue.” If so, then what’s there is probably fine, if awkward for the machines intended to use this as a database. Is that the case, @hoserab?

As for the Canada post database: if you enter “267 Avenue Niverville Avenue” you will get one language form back, not “267 Avenue Niverville Avenue”, and it follows the localization the website is in when it picks between the two (I was using French, fwiw, so got the French version). “267 Niverville Avenue” returns the English version, and “267 Avenue Niverville” returns the French version regardless of browser localization settings. So what one uses in postal adddress, @hoserab , is NOT what is currently on the map, at least not according to Canada Post, but the localized version appropriate to the language being used.

edit: As a final note, the city of Winnipeg’s official street number database lists that same address as “267 Niverville Avenue”. You can do a query in their Socrata database to confirm that if you wish.

Okay, so you think the intent is “to provide the name in the two official languages of the country”. More precisely it’s to provide the name in the two official languages in use in St. Boniface, but yeah, that’s the gist. All this jibber-jabber about “postal addresses” is a distraction.

Alors, nous sommes d’accord qu’«avenue Niverville» est le nom en français, and “Niverville Avenue” is the name in English. If I can summarize your analysis on why the street signs read “av Niverville Ave”, it’s that because of the limited physical space on signage itself the municipality bodged the French and English names together. The OSM database goes a small step in using the “space available to it” by expanding the names to read “Avenue Niverville Avenue”, which represents both the French and English names in full

So far your proposed solution to this “issue” is to give the English name primacy over the French name, based on an assertion that City of Winnipeg cadastral data and “what people on the street use” = the English name, therefore English ought to have primacy. Whereas I gave you a reference to the City of Winnipeg Charter which quite pointedly says that in the historically francophone/Métis parts of Winnipeg the official languages are French and English, with neither having primacy over the other. So, your proposed solution to date is simply unacceptable and not reflective of the reality on the ground.

If you don’t like the “Avenue Niverville Avenue” compromise that is represented on the street signage, what would you suggest otherwise?

1 Like

No, OSM isn’t “going a small step”, it is aping the street signage which is making a (valid) compromise due to the lack of physical space and dynamic display. Those signs are immutable and shared by everyone simultaneously, while being relatively small in size for the content they need to contain.

The name of the street is not “Avenue Nivervile Avenue”, it is “Avenue Niverville” in French and “Niverville Avenue” in English. And OSM has a way to model that; in this case that would be → “name:”, “name:fr”, and “name:en”.

Not at all. Both should be there, and renderers should select the most appropriate one for the user.

I don’t like the OSM data model in a number of ways, and a non-localized name field is one of them. But it’s too late to fix that now. However, it is not a matter of “primacy”, but rather of a flawed data model which has since been extended with localized name fields.

name=Niverville Avenue, name:en=Niverville Avenue, name:fr=Avenue Niverville.

The street sign can not dynamically show one or the other, like software can, which is why it is formatted that way on street signs.

A database is not a physical piece of stamped metal, however. It is interpreted (rendered, vocalized, indexed, searched, etc.) by software which is dynamic and can make these decisions and choices on the fly based on both user preference and local standards.

Putting both together in a single literal text field in the database is trying to do the job of software in the data, only poorly. It’s hard to explain just how wrong that is.

Software should render data from the database in an appropriate form, and the database should contain accurate data for the software to utilize. Again: “Avenue Neverville Avenue” does not actually exist.

1 Like

And what is your solution for streets in New Brunswick, then?