place=*, distritos municipais e bairros

Olá a todos,

O wiki diz que:

  • place=* não depende de admin_level=*

  • place=city/town/village/hamlet devem ser usados para povoações fisicamente separadas entre si (que não formam uma conurbação), e place=suburb/neighbourhood devem ser usados para subdivisões dessas povoações

  • place=neighbourhood pode ser subdivisão de place=city/town/village/suburb, mas place=suburb só pode ser subdivisão de place=city/town mas não de place=village

Ou de forma hierárquica:

  • City/town
    [list=*]

  • Suburb
    [list=*]

  • Neighbourhood

[/*] [/list][/*] [*]Village
  • Neighbourhood

[/*] [/list]

Do que eu concluo:

  • em geral, mas nem sempre: o distrito-sede de um município compartilha o rótulo com o município, os bairros do distrito-sede são place=suburb, os rótulos dos outros distritos são place=village e os bairros dos outros distritos são place=neighbourhood

  • se os distritos municipais estiverem conurbados com o distrito-sede, todos os rótulos de distritos (exceto o da sede) devem ser place=suburb e o distrito-sede deve ser tratado como se fosse place=suburb também, ou seja, seus bairros devem ser place=neighbourhood

  • nos outros casos (que na verdade são bem mais comuns), os rótulos dos distritos (exceto o da sede) devem ter place=* definido conforme a população da mesma forma que fazemos para municípios, ou seja, o valor place=* do rótulo do distrito pode ser place=hamlet/village/town/city

  • se o distrito-sede tiver mais de 10 mil habitantes, ele é considerado equivalente a place=city/town e os seus bairros devem ser place=suburb

  • se o distrito-sede tiver menos de 10 mil habitantes, ele é considerado equivalente a place=village e os seus bairros devem ser place=neighbourhood

Faz sentido pra vocês?

Queria ter essa certeza porque estou começando a arrumar o mapa de cidades subdivididas em distritos e não gostaria de introduzir erros no mapa, caso alguém já tenha tido essa discussão de forma mais aprofundada (procurei e não achei).

Estou deixando os subdistritos municipais de fora da discussão porque me parece que não estão sendo mapeados, e parto do pressuposto de que não desejamos usar valores de place=* controversos e sem suporte amplo.

Vou acumular aqui os casos particulares que for encontrando para enriquecer o debate:

  1. Alvorada, RS: distrito-sede + 1 distrito conurbado a ela. Esse distrito seria place=suburb e seus 2 bairros seriam place=neighbourhood.

  2. Gravataí, RS: distrito-sede + 4 distritos não conurbados a ela com população entre 1 e 10 mil habitantes. Os distritos (exceto a sede) seriam place=village, os bairros da sede seriam place=suburb, e os bairros dos outros distritos seriam place=neighbourhood.

Contrapontos:

  1. hamlet embora venha sendo usado em larga escala no Brasil, eu acho ela estranha pois não obedece regra de “pertencimento”. Em alguns trechos da Wikipedia é citado que ela é, em muitos países, tida como local não incorporado de um município, o que não existe no Brasil. Ou a forma como a mapeamos está incorreta, ou o nominatim na hora de mostrá-las em pesquisa faz besteira. Exemplo (que vale para todas as hamlets atuais do Brasil): A pesquisa por “Passo da Barca” que é uma localidade do distrito de Catuçaba, município de São Gabriel deveria retornar “Passo da Barca, Catuçaba, São Gabriel, Microrregião…” mas retorna “Catuçaba, Passo da Barca, Microrregião…”, ou seja, retorna um resultado que diz que o distrito de Catuçaba pertence a localidade de Passo da Barca, que não pertence a município algum. Algo está errado nesta história toda. place=locality não serviria para marcar localidades rurais que não são sedes de distritos?

  2. Para mim faz todo o sentido a hierarquia que tu apresentou, só acho que place=quarter deveria ser incluído para marcação de bairros oficiais, ficando neighbourhood para as áreas que são de fato “vizinhanças” como vilas, parques residenciais, loteamentos e afins. Vale lembrar que a maioria dos municípios quando monta sua divisão de bairros junta muitas delas para formar o então bairro oficial.

Pela definição no wiki do OSM, place=hamlet é um assentamento (settlement) tal como place=town e place=village, independente de serem incorporados a um município. A ideia de assentamento do OSM se assemelha mais à ideia de “perímetro urbano” do que da de “município”. Então o ponto place=city + name=Santa Maria representa o núcleo da área urbana de Santa Maria (e tal como o IBGE nós no OSM o colocamos junto à prefeitura, exceto nas capitais onde colocamos junto ao governo do estado).

Quanto ao texto da Wikipédia, ele cita tanto casos em que hamlets são incorporados a municípios quanto casos em que são municipalidades independentes, varia por país.

Isso não é impossível, e se o Nominatim fizer besteira, o melhor seria abrir uma issue com os desenvolvedores. Só antes temos que nos certificar de que acontece em mais casos, ou seja de que não é um caso isolado, que poderia ser simplesmente um problema de atualização do cache do Nominatim.

Dos três resultados, só um está incorreto (o de Caçatuba), e ele aparece como Lugarejo porque está mapeado como place=hamlet. De qualquer forma, place=locality é apenas para um “lugar com nome mas sem população”. Serve, então, quando essas localidades não tiverem habitantes.

Suspeito que o que está faltando pro Nominatim conseguir determinar corretamente a inclusão de Passo da Barca em Caçatuba é adicionar um ponto place=village para Caçatuba (porque Caçatuba tem 2589 habitantes e não é conurbada com o distrito-sede de São Gabriel) e incluí-lo no limite administrativo de Caçatuba como admin_centre, como costuma ser em todas as relações de limite. Se isso não resolver, eu abriria uma issue.

se houver necessidade. Essa tag ainda é controversa, e tags de place não renderizadas têm causado replicação de dados nos outros países.

Já existem 2 pontos com o nome Caçatuba nessa região: este e este. Somente um dos dois pode estar correto, e se for o segundo, seria o ideal para transformar em village. Em geral o ponto do lugar deve ser primariamente o núcleo do lugar e, nesse núcleo, um lugar interessante como origem e destino de rotas. Pode ser o caso das proximidades deste cruzamento (veja a hierarquia viária oficial).

Não. Não é só para o caso de Catuçaba. É para todas. A terceira aparece devidamente hierarquizada porque está como place=locality. A outra também está errada, aparecendo “Sede, Passo da Barca,Micr…” ao invés de “Passo da Barca, Sede, Restinga Sêca, Micr…”

E isso acontece mesmo na maior cidade do BR. Pesquisando por “Villaggio Panamby” (v.1 de http://www.openstreetmap.org/node/1921673611)), ela retorna “Vila Andrade, Villaggio Panamby, Micr…” ao invés de “Villaggio Panamby, Vila Andrade, São Paulo, Micr…”.

Se tu puder abrir um ticket, para que as coisas possam ser esclarecidas, eu agradeço.

Pra não perdermos o foco do tópico, acho melhor abrir outro, porque tem outras questões a responder pra abrir o ticket (desde quando está assim, em que outros lugares acontece, etc.).

Proposta de mudança de texto:

  • se os distritos municipais estiverem conurbados com o distrito-sede** e/ou tiverem população equiparada a uma Town (>10 mil hab.)**, todos os rót…

Pode não ser muito comum, mas pode acontecer…

Hm, isso tornaria place=suburb os distritos não-conurbados com mais de 10 mil habitantes. Talvez você quis dizer o contrário: que se o distrito estiver conurbado e for substancialmetne populoso, ele não deve ser suburb e sim town.

Tenho acompanhado essa discussão, e acho que tem mais uma coisa a considerar: conurbação por si só não define uma “povoação.” Aspectos culturais também. Então, nesse caso, depende da história do distrito - se a cidade foi subdividida porque cresceu demais (como Santiago do Chile) ou se as regiões em volta eram independentes e foram se fundindo (como Paris ou Berlim). Acho que a maioria dos distritos caem no segundo caso, então melhor só mapear como suburb depois de consultar o histórico do município no IBGE.

Depois da conversa que tivemos no Telegram, andei pesquisando sobre as diferenças semânticas entre city, town, village, etc. e achei esta discussão, que me levou às seguintes distinções originais:

  • city: 200k+ ou com status especial geralmente definido pela presença de uma catedral diocesana, com exceções

  • town: 5k+ ou com uma prefeitura e um mercado

  • village: 200+

Por essa perspectiva, todos os municípios brasileiros seriam pelo menos town, já que todos têm uma prefeitura - não por acaso é chamada no OSM de town hall.

Além disso, distritos municipais são similares aos arrondissements municipais franceses, que assim como no Brasil têm subprefeitos, mas diferente do Brasil o subprefeito francês é indicado pelo conselho distrital, que é eleito pela população; além disso, a maioria desses distritos são conurbados e estão sendo mapeados como suburb.

Isso sugere que o ideal seria reservar as classes abaixo de town para distritos, subdistritos, e eventualmente bairros fora do perímetro urbano. Desta forma, bairros de distritos não poderiam ser suburb, teriam que ser sempre neighbourhood. Também pode sugerir a adoção de novos limiares e critérios não-populacionais relativos aos serviços existentes, como os definidos pelo IBGE. Inclusive poderíamos fazer as seguintes correspondências:

  • sede de município (cidade)
    [list=*]

  • city: se for capital ou se tiver população acima de um limiar definido pela comunidade estadual

  • town: se não for city

[/*] [*]bairro fora do distrito-sede
  • neighbourhood

[/*] [*]bairro do distrito-sede, ou sede de distrito municipal (vila)
  • suburb (aglomerado de extensão urbana): se for situado até 1 km de distância do perímetro urbano legal

  • village (povoado): se não for suburb, tiver um mercado e faltar no máximo um dos seguintes
    [list=*]

  • uma escola de ensino fundamental

  • um posto de saúde

  • um templo religioso

[/*] [*]*hamlet* (lugarejo ou núcleo): se não for *suburb* nem *village*[/*] [/list][/*] [/list]

Não acho que o status de city deve ser definido pela estrutura religiosa (afinal isso não determina mais o status no Reino Unido), mas talvez poderia contribuir para a escolha de um limiar populacional mais adequado em cada estado. No RS, por exemplo, sugeriria os limiares de 240k e 170k como candidatos.

Acho que seria raro algum distrito ser hamlet e ter bairros, mas se ocorrer, acho que faria sentido mapear o distrito como village então.

Possivelmente, mas não analisei a fundo, os poucos municípios com subdistritos poderiam ter esse nível mapeado como suburb e o nível seguinte (bairros) como neighbourhood.

Acho adequado. Pelo que entendi, dessa forma, todos os municípios seriam city ou town e tudo o que não for município seria algo menor. É isso?

Uma dúvida que eu tenho é: quais dessas classificações são consideradas como pertencentes a city ou town? O motivo é que o município sempre deve ser citado nos endereços brasileiros. Se algum subnível não for uma subdivisão de city ou town, o nome do município seria eliminado do endereço. Como lidar com isso?

Não sei se entendi direito. Se “city/town/village/hamlet devem ser usados para povoações fisicamente separadas entre si (que não formam uma conurbação)”. Mas tem muita conurbação. Sobretudo com a urbanização crescente no mundo todo. Se não tem separação física, tem a separação administrativa (a princípio oficial).

O wiki distingue entre alguns tipos de lugar (place):

  • os definidos administrativamente: país, estado, município, etc.

  • as povoações urbanas e rurais: cidade, vila, povoação, moradia isolada, fazenda, bairro, vizinhança, etc.

  • outros tipos: continente, arquipélago, ilha, praça, localidade, etc.

Desses, as únicas amplamente suportadas que podem ser entendidas como parte de outra povoação são suburb (subúrbio, que costumamos usar pros bairros) e neighbourhood (vizinhança). Outras, não tão bem suportadas, são borough (burgo) e quarter (frequentemente traduzido como “bairro”, mas está mais próximo em significado de “quarteirão”). Pela definição (fiz um resumo lá no começo), suburb só pode ser parte de city e town, e neighbourhood só pode ser parte de suburb, town ou village.

Boa pergunta. Eu sempre achei que o Nominatim se guiava primariamente pelas relações de limite administrativo, mas me aprofundando ontem descobri que não é bem assim. Complica um pouco o fato de que as regras do Nominatim variam por país, e talvez as usadas no Brasil não estejam bem certas.

Eu posso ter contribuído pra essa confusão igualando (erroneamente) povoação com aglomeração urbana. O texto do wiki sugere que povoação (settlement) é no mínimo área urbana + área rural ocupada, e ainda estou em dúvida se inclui qualquer área sujeita a alguma jurisdição (quero ver o que respondem lá na lista tagging). A definição no wiki diz que a povoação deve ser considerada distinta, não diz que deve necessariamente ser um aglomerado urbano separado de outros. Uma forma de distinguir povoações é pelo limite administrativo. Parece ser essa a expectativa do Nominatim.

Se isso estiver correto, então dentro de município só se poderia usar os tipos que podem ser partes de povoação: suburb, neighbourhood, borough e quarter (este último não é citado na documentação e talvez não seja suportado). Apesar de não estar escrito no Wiki, o sistema de ranking do Nominatim sugere outras hierarquias geralmente aceitas, como locality dentro de hamlet mas não dentro de suburb.

Procurei mas ainda não achei o código-fonte no Nominatim que realiza o cálculo do rank.

Eu acho que o nominatim usa o formato de endereço (1) para geocodificação reversa

(1) https://wiki.openstreetmap.org/wiki/Nominatim/Country_Address_Format

Assim, os formatos utilizados no Brasil deve ser descrito en Nominatim para obter um melhor resultado.

No Telegram, foi levantada a ideia de que o valor da etiqueta place precisaria ser elevado em alguns municípios com menos de 100 mil habitantes, fazendo um comparativo visual com alguns lugares na Europa. Do jeito que está, muitas áreas no Brasil ficam vazias na renderização do mapa em níveis de ampliação mais baixos. O texto nos wikis inglês e francês sugerem que isso não seria muito correto. Mas na Inglaterra a definição depende mais de decreto do que de população, e na França muitas das capitais regionais estão sendo mostradas porque têm a etiqueta *capital=**. E nos EUA, à primeira vista, parecem ter elevado a classificação das capitais dos condados, mesmo quando têm população abaixo desse limiar.

O pessoal no Telegram achou interessante a definição do wiki alemão:

“Área administrativa” permitiria que a cidade principal de qualquer nível administrativo seja city, e “são significativamente maiores do que os lugares ao redor” permitiria que até os centros de zona (na hierarquia urbana do IBGE) fossem city.

Isso parece muito com a definição da localidade do IBGE do tipo povoado:

Minha conclusão é de que os limiares foram um “chute inicial” a ser aprimorado depois pelos mapeadores, e que no Brasil nunca se fez esse aprimoramento, que envolve avaliar fatores mais complexos, como os que o IBGE avialiou ao elaborar a hierarquia urbana.

Isso parece com a localidade do IBGE do tipo lugarejo:

Por essa lógica, os bairros são neighbourhood, os distritos municipais são suburb, e pra city, town, village e hamlet não precisamos seguir os limiares populacionais rigidamente.

Além disso, todos os municípios com divisão em distritos teriam que ser city ou town, pra satisfazer as regras do wiki. Mas talvez, como todo município tem uma prefeitura, todo município deveria ser no mínimo town. Por exemplo, o menor município do RS, André da Rocha, tem prefeitura, estação rodoviária, posto de correio, posto de polícia, uma igreja católica, e dois mercados diários (que não estão no OSM mas podem ser verificados na ferramenta concorrente procurando por “Mercado Marcon” e “Mercado Pioneiro”). Outro exemplo é o município menos desenvolvido do RS, Santana da Boa Vista, que tem prefeitura, escola, posto de saúde, 4 mercados, e uma igreja (só não é da denominação mais comum do país e do estado).

O pessoal no Telegram também achou interessante esta discussão na Holanda, com três propostas:

A proposta do Byckel é bem similar à da Alemanha, talvez mais exigente do que seria razoável pra adotarmos no Brasil. Por isso acho interessante nos inspirarmos na definição das localidades do IBGE, são simples, objetivas, e certamente foram ponderadas pra nossa realidade por profissionais da área. Talvez até consigamos o dado oficial.

Só pra constar, a princípio o Nominatim entende a seguinte hierarquia:

  • City
    [list=*]

  • Town
    [list=*]

  • Village, hamlet
    [list=*]

  • Suburb
    [list=*]

  • Neighbourhood

[/*] [/list][/*] [/list][/*] [/list][/*] [/list]

Então, ele entenderia uma village dividida em suburb, embora o wiki não diga que isso é esperado. O Carto representa suburb com um rótulo maior que village, sugerindo que realmente não é o esperado.

No Brasil, a distribuição de população por município é:

  • 17 acima de 1 milhão
  • 25 entre 500 mil e 1 milhão
  • 107 entre 200 mil e 500 mil
  • 161 entre 100 mil e 200 mil
  • 355 entre 50 mil e 100 mil
  • 1103 entre 20 mil e 50 mil
  • 1352 entre 10 mil e 20 mil
  • 1215 entre 5 mil e 10 mil
  • 1124 entre 2 mil e 5 mil
  • 108 entre 1 mil e 2 mil
  • 3 abaixo de 1 mil

Considerando os municípios do Brasil e partindo das definições tradicionais, teríamos:

  • 310 city (sede de município com mais de 100 mil habitantes)
  • 2810 town (sede de município entre 10 mil e 100 mil habitantes)
  • 2450 village (sede de município com menos de 10 mil habitantes)

O que não for município deveria ser classificado como uma subdivisão de município:

  • suburb: sede de distrito de município com mais de 10 mil habitantes
  • neighbourhood: bairro; sede de distrito de município com menos de 10 mil habitantes

Não sei o que fazer com Hamlet (talvez o lugar dele seja na Dinamarca :D)