[Talk-GB] OSM UK address project: tags - Updated guidance
Sarah Hoffmann
lonvia at denofr.de
Sun Jan 9 10:49:59 UTC 2022
Hi,
Rob has asked me to comment on the current state of the discussion from
my point of view as Nominatim developer. Following his lead, I won't
answer anybody in particular but just summarize my views.
I do have been following the discussion closely. It all looks quite
reasonable so that there was no need to add to the noise.
Thank you for taking the time to start a wiki page.
The most pressing point from my side was the (ab)use of the addr:street
tag that are not streets. I think that point has been understood and
is well addressed in all suggestions. As Tom notes, Nominatim does do a
match-up with the street object. This is not just a technical
optimisation. The street object can deliver useful additional
information, for example name translation in bilingual places like
Brussels. That's why Nominatim is rather unforgiving when there is no
street with the same name as in addr:street. (If you want to find issues
on that side, the QA view 'addr:street wrong name'
https://nominatim.org/qa/#map=7.57/53.49/-1.00&layer=addr_street_wrong_name
shows where Nominatim disagrees on your choice of addr:street.)
Regarding the opposing proposals of addr:substreet (as currently in the
wiki) and addr:parentstreet (as proposed by Simon Poole and Tom
Crocker), they work both from a data user point of view as far as I can
see. Which one you go for depends on whether you put more emphasis on
the dependent street or the parent street in an address:
Say you have an address like '4 Rose Terrace, Garden Street'. You can
tag this as:
addr:housenumber=4
addr:substreet=Rose Terrace
addr:street=Garden Street
A data user who does not know about the UK system would output an
address of '4 Garden Street'.
Or you could tag the address as:
addr:housenumber=4
addr:place=Rose Terrace
addr:parentstreet=Garden Street
which our unsuspecting data user would read as '4 Rose Terrace'.
Which one is less wrong? Initially I thought the first version would be
better because it brings you at least in the vicinity of the right
address. In the meantime I have learnt that there may well be an
actual address '4 Garden Street'. So I see the potential for confusion.
I also had some reservations about using addr:place for something like a
building or a terrace. When it was invented, they idea was that it
refers to some place= node (hence addr:place), i.e. something that is
conceptually above street level. However, thinking more about it, this
is just a historical detail and not that relevant. The important
function of addr:place is to mark a non-street address. If the place is
above or below street-level address-wise is an implementation detail
that can be covered with addr:parentstreet.
You'll know British addresses better than me, so you'll decide if you
prefer addr:substreet or addr:parentstreet. Data users will thank you
if you go for one or the other, not both. And don't forget to add it
to the main addr:* page in the wiki when you have decided. There might
be other places after all with a similar concept that might want to
reuse the tags.
A quick word on the other address tags: Nominatim doesn't really care
what exactly you use there. It will use them pretty much all for search.
My advice would be to a) always use addr:city for the postal town (i.e.
the name you put next to the postcode in the address) and b) only add
names that would show up in the address. If 'address' then refers to the
official RM address or the address used by any sane human being
(or both) doesn't really matter. Just remember that if you don't put one
or the other into the address tags and it doesn't correspond to the
geographical location either, then the address won't be found. (SK53's
example in Scotland was a perfect example of a RM address that is
unsearchable unless added to the addr:* tags.)
Sarah
More information about the Talk-GB
mailing list