Overpass - Os valores das tags
luisforte님이 Portuguese (Português)로 2019년 9월 28일에 게시함. 최근 2019년 10월 15일에 업데이트됨.Inúmeras vezes deparamos com tags que apresentam valores incorrectos, algo designado como “dirty data” nos sistemas de armazenamento de dados. [building=casa], é um exemplo que todos já terão visto. Alguns destes erros são causados por distração, outros pelo desconhecimento das regras que indicam quais os valores aplicáveis a uma tag.
A identificação de todos estes erros num só passo, é a melhor forma de permitir a sua correcção, ao invés daquela que fazemos ao editar o mapa quando deparamos casualmente com um exemplo isolado.
Overpass QL possibilita a extração desta informação numa qualquer região.
Vamos aqui analisar, como exemplo, a sanidade da tag waterway.
Neste exemplo, a listagem de todos os valores contidos na tag waterway e do respectivo número de ocorrências em Portugal, pode ser obtido com a execução da query https://overpass-turbo.eu/s/MGf .
Os resultados desta query discriminam o somatório por tipo de objecto ( node, way e relation), sendo apresentada a soma destes três valores na coluna total.
Hoje, 28 de Setembro, a execução desta query devolve o seguinte resultado:
waterway nodes ways relations total
boatyard 13 25 5 43
canal 0 4836 11 4847
dam 42 692 25 759
ditch 0 2091 1 2092
dock 7 34 3 44
drain 1 3890 3 3894
fairway 0 1 0 1
fish_pass 0 1 0 1
fountain 1 0 0 1
fuel 9 0 0 9
harbour 0 1 0 1
lake 0 12 0 12
lock 2 0 0 2
lock_gate 25 4 0 29
pressurised 0 2 0 2
pumping_station 3 1 0 4
reservoir 0 79 1 80
resservoir 0 2 0 2
river 0 2800 116 2916
riverbank 0 875 98 973
sanitary_dump_station 0 1 0 1
screen 2 0 0 2
spillway 0 1 0 1
stream 4 29510 80 29594
turning_point 1 0 0 1
water 0 1 0 1
water control box 1 0 0 1
water_point 1 1 0 2
water_well 1 5 0 6
waterfall 335 17 0 352
weir 238 459 2 699
yes 4 42 0 46
Esta tabela pode ser copiada e colada em Excel/Numbers/Calc ou qualquer outra folha de cálculo, para melhor claridade.
Observando o resultado da query rapidamente identificamos valores aparentemente incorrectos ou imprecisos .
Muitas vezes carecem apenas de uma ligeira correção.
Outras vezes poderão ser eliminadas as geometrias, caso se trate de objectos inexistentes no terreno.
Um water_well, bem como reservoir, não se enquadram nesta tag.
resservoir não se enquadrará em nenhuma tag. O valor yes para esta tag deverá ser requalificado para uma correcta caracterização do elemento. A existência de 4 nodes com o valor de stream nesta tag também é objecto de análise.
Valores, como boatyard, não existem na página da wiki referente a waterway; isso não implica contudo que o valor da tag seja inválido. Em caso de dúvida, procurar o termo na wiki será sempre útil, dado que este valor boatyard existe para esta tag, embora numa página distinta.
Para possibilitar a visualização/edição das geografias que apresentam um dos valores incorrectos apresentados na lista acima, poderá ser aplicada a seguinte query em Overpass QL, neste caso para obter todas as geometrias que contém a tag [waterway=yes]
area[name=Portugal];
nwr["waterway"="yes"](area);
out;
>;
out;
Para analisar os 4 nodes, referidos anteriormente, que contém [waterway=stream], convirá isolar os nodes dos restantes objectos, ways e relations, para permitir a sua fácil visualização no mapa, com a seguinte query:
area[name=Portugal];
node(area)["waterway"="stream"];
out;
semelhante à query anterior, mas onde a palavra nwr é substituída por node, além da redução das duas linhas finais.
Curiosamente todos estes 4 nodes têm esta tag incorrectamente atríbuida, não estado sequer integradas em cursos de água, como se pode verificar no resultado desta query. Eventualmente serão nodes candidatos a serem eliminados.
Considerando a primeira query aqui referida, que devolve as tags existentes e respectivo número de ocorrências:
- Neste exemplo foram analisados os valores contidos na tag waterway. Para analisar a sanidade de outras tags, todas as (5) ocorrências da palavra waterway deverão ser substituídas pela tag que se pretende analisar, como por exemplo man_made. Executar a query para verificar os valores existentes na tag amenity é certamente mais divertido dada a variedade de valores apresentados, cerca de 300.
- Uma vez que esta query não devolve quaisquer dados com coordenadas geográficas, o mapa não vai apresentar qualquer informação. Para visualizar os dados deverá ser seleccionada a secção "Data", no canto superior direito.
Não fiz qualquer alteração ou correção aos elementos referidos neste texto, de forma a permitir que ao ser executada qualquer das queries se possam verificar as observações aqui feitas. Se os resultados diferirem será devido a alterações posteriores a esta data.
토론
2019년 9월 29일 12:19에 Silva1989님의 의견
Obrigado!