dg:AsIs feature types
- (texto original trazido de https://git.digital-guard.org/preserv/blob/main/docs/pt/ftypes.md)
A tabela ingest.feature_asis
armazena todos os dados ingeridos, de"todos" os tipos (úteis para os projetos AddressForAll e OSMcodes). A tabela ingest.feature_type
descreve cada um desses tipos. Resumidamente são:
- geopoint: Geo-ponto. Representação geográfica de um ponto qualquer de interesse (PoI), diferente do Geo-endereço.
- genericvia: Ferrovia, hidrovia ou qualquer outra "via complementar generalizada" que ajude a delimitar polígonos de quadra.
- nsvia: Namespace para distinguir vias duplicadas, tipicamente nome de polígono de bairro ou de loteamento.
Com geometria
Idealmente os dados fornecidos possuem geometria e todos os atributos obrigatórios, ou seja, são "full". Quando não:
- o sufixo
_ext
indica layer complementado por tabela externa (portanto sim necessita JOIN com respectivo cadastro); - o sufixo
_none
indica que nenhum controle externo pode ser realizado e nem todos os atributos obrigatórios estão presentes.
ftID | ftName | geomType | join | Descrição resumida |
---|---|---|---|---|
21 | geoaddress_full | point | não | Geo-endereço. Representação geográfica do endereço, como ponto. |
22 | geoaddress_ext | point | SIM | |
23 | geoaddress_none | point | não | |
26 | geopoint_full | point | não | Geo-ponto. Representação geográfica de elementos genéricos, como ponto. |
27 | geopoint_ext | point | SIM | |
28 | geopoint_none | point | não | |
31 | via_full | line | não | Eixo de via. Logradouro representado por linha central, com nome oficial e codlog opcional. |
32 | via_ext | line | SIM | |
33 | via_none | line | não | |
41 | genericvia_full | line | não | Via complementar generalizada. Qualquer linha divisora de lotes e quadras: rios, ferrovias, etc. Permite gerar a quadra generalizada. |
42 | genericvia_ext | line | SIM | |
43 | genericvia_none | line | não | |
51 | building_full | poly | não | Polígono de edificação. |
52 | building_ext | poly | SIM | |
53 | building_none | poly | não | |
61 | parcel_full | poly | não | Polígono de lote. |
62 | parcel_ext | poly | SIM | |
63 | parcel_none | poly | não | |
71 | nsvia_full | poly | não | Espaço-de-nomes para vias, um nome delimitado por polígono. Tipicamente nome de bairro ou de loteamento. Complementa o nome de via em nomes duplicados (repetidos dentro do mesmo município mas não dentro do mesmo nsvia). |
72 | nsvia_ext | poly | SIM | |
73 | nsvia_none | poly | não | |
81 | block_full | poly | não | Quadras ou divisões poligonais similares. |
82 | block_none | poly | não | |
91 | datagrid_full | point | não | Para grades de pontos. ftid=92 será implementado conforme necessidade. Ver digital-guard/preserv#115 |
92 | datagrid_ext | point | SIM | |
93 | datagrid_none | point | não |
Cadastral
Quando a tabela AsIs do layer não apresenta todos os atributos obrigatórios, deve-se recorrer a um cadastro externo com o qual fará JOIN depois de ingerida. Assim, para todo layer com sufixo _ext
é ingerido também o cadastro correspondente.
Relacionamentos obrigatórios:
ftid | ftname | Join | descr |
---|---|---|---|
1 | address_cmpl | SIM | Endereço cadastral, representação por nome de via e numeração predial. |
2 | address_noid | não | |
6 | cadparcel_cmpl | SIM | Lote cadastral (nome de parcel), complemento da geográfica. Lote representado por dados cadastrais apenas. |
7 | cadparcel_noid | não | |
11 | cadvia_cmpl | SIM | Via cadastral (nome de via), complemento da geográfica. Logradouro representado por dados cadastrais apenas. |
12 | cadvia_noid | não | |
16 | cadgenericvia_cmpl | SIM | Generic-via cadastral (nome de Generic-via), complemento da geográfica. Generic-via representado por dados cadastrais apenas. |
17 | cadgenericvia_noid | não |
Descrição detalhada das classes
As classes de dados filtrados são orientadas às classes dos dados consolidadados. Abaixo como elas se relacionam no processo de consolidação.
geoaddress
.. link para o consolidado.
geopoint
... link para o consolidado, e digital-guard/preserv#91 issue de origem.
Alguns doadores não possuem pontos de endereçamento, mas possuem
- "pontos de poste": postes da linha de transmissão elétrica das ruas de uma cidade.
- "marcos geodésicos": pontos para ajuste do GPS, etc.
- ... outros a classificar. Por exemplo tampas de esgoto, hidrantes, etc.
Esses pontos são em geral mais precisos, portanto ajudam a consolidar os demais dados.
Exemplos exóticos: no Chile nos fornecem *pontos de inicio e fim de face de quadra*, ou seja, ao invés da numeração predial, uma interpolação precisa.
geofield
Geo-campo é uma representação alternativa da realidade geográfica. Tipicamente uma grade com células representando o valor médio de uma grandeza em seu interior: temperatura, densidade populacional, etc.
Synonymous terms include spatially dependent variable (wikipedia:geostatistics), statistical surface ( thematic mapping), and wikipedia:intensive property (wikipedia:physics and wikipedia:chemistry) and crossbreeding between these disciplines is common.
O modelo formal mais simples para um campo é a função, que produz um único valor por ponto no espaço. Matematicamente a camada do tipo campo, por exemplo a variável t representando a temperatura, será expresso como t = f(x, y).
housenumber_system_type
Da mais alta relevância para a correta interpretação da numeração predial e dos nomes de via dentro do sistema de descrição de endereços de um país ou divisão jurisdicional do país. Na AddressForAll foi definida a seguinte tabela House System Type (HST ou housenumber_system_type
) de definições:
coluna | tipo | significado |
---|---|---|
hstid
|
smallint PRIMARY KEY NOT NULL
|
identificador (id) do HST |
hstname
|
text NOT NULL CHECK(lower(hstname)=hstname)
|
Rótulo curto e mnemônico do HST |
regex_sort
|
text NOT NULL
|
regular expression da ordenação da numeração predial |
description
|
text NOT NULL
|
descrição |
Atualmente, em 2023, temos apenas os seguintes descritores:
hstid | hstname | regex_sort | description |
---|---|---|---|
0 | metric | [0-9]+
|
integer |
1 | street-metric | [0-9]+[A-Z]? \- [0-9]+ [SNEL]?
|
string |
2 | block-metric | [0-9]+ \- [0-9]+
|
integer function |
3 | ago-block | ||
4 | df-block |
Campos padronizados
Para facilitar
layer | campo | alias | full | descricao_ptbr | descricao_en |
---|---|---|---|---|---|
geoaddress/parcel/building/via/nsvia/genericvia/block | gid | sim | identificador único | ||
geoaddress/parcel/building/via/nsvia/genericvia/block | geom | sim | geometria da feature | ||
geoaddress/parcel/building | via | addr:street | sim | nome do logradouro | name of the street that a feature is located by/at |
geoaddress/parcel/building | hnum | addr:housenumber | sim | número de porta | Number that is included in the address. The number may contain non-digits |
geoaddress/parcel/building | sup | complemento | complementary information that compose the postal address | ||
geoaddress/parcel/building | postcode | addr:postcode | código postal (CEP) | postal code | |
geoaddress/parcel/building | nsvia | addr:suburb | nome do bairro | name of the suburb | |
geoaddress/parcel/building | name | name | nome do ponto de interesse | name of point of interest | |
geoaddress/parcel/building | ref | identificador | |||
geoaddress/parcel/building | nsref | identificador nsvia | |||
geoaddress/parcel/building | blref | identificador block | |||
geoaddress/parcel/building | place | addr:place | Used when addr:housenumber is not relating to a street but to other entity, usually a settlement | ||
geoaddress/parcel/building | city | addr:city | The name of the largest settlement (city/town) that is included in the address | ||
geoaddress/parcel/building | country | addr:country | The country code that is included in the address | ||
geoaddress/parcel/building | block | addr:block | The city block that is part of the address | ||
geoaddress/parcel/building | district | addr:district | The name of the district that is included in the address | ||
building | building | building | Era class. | Architectural typology of the building. | |
building | use | building:use | What kind of function a building=* serves. This tag can be handy when the form or original purpose of a building differs from its present use. | ||
building | amenity | amenity | Useful and important facilities for visitors and residents, such as toilets, telephones, banks, pharmacies, prisons and schools. | ||
building | levels | building:levels | The number of visible levels (floors) | ||
building | material | building:material | Outer material for the building façade | ||
building | min_level | building:min_level | For describing number of values, "filling" space between ground level and bottom level of building or part of building | ||
building | part | building:part | To mark a part of a building, which has attributes, different from such ones at other parts | ||
building | height | height | The height of the building in meters | ||
via | via | name | sim | nome da via | street name |
via | postcode | postal_code | indica o código postal dos imóveis lindeiros a via. | ||
via | highway | highway | categoria da via. | Identifies the category of the street or path | |
via | lanes | lanes | Indicates how many traffic lanes there are on a highway | ||
via | lit | lit | indica se a via é iluminada. | Indicates the presence or absence of lighting on a street | |
via | sidewalk | sidewalk | indica se a via possui calçadas nas laterais. | Indicates the presence or absence of sidewalk alongside a street | |
via | surface | surface | ndica a superfície da via. | Provides information about physical surface of a street or path. | |
via | oneway | oneway | indica se a via possui sentido único. | Indicates whether a street is one-way. | |
nsvia | nsvia | name | sim | nome do bairro | |
nsvia | postcode | postal_code | indica o código postal dos imóveis dentro do bairro. | ||
nsvia | ref | identificador | |||
genericvia | via | name | sim | nome da genericvia | |
genericvia | type | sim | tipo da genericvia | ||
genericvia | ref | código da genericvia | |||
block | name | name | sim | nome da quadra | |
block | postcode | postal_code | indica o código postal dos imóveis dentro da quadra. | ||
block | ref | identificador | |||
block | nsref | identificador do bairro. |
Error mask
The sequence of bits of an item indicating errors is as follows:
`error_mask=0000000000000`
From right to left, a bit equal to 1 means:
- Item is found outside the expected jurisdiction boundaries;
- Item does not have valid geometry. For example, it is expected that a building be represented by a closed geometry, _i.e._ a polygon;
- Item does not have simple geometry. Aiming to a broader support, our standard requires that features must not be composite objects, for example, streets as `MultiLinestrings`;
- Item has empty geometry. That means the dataset contains one or more geometries without geographic coordinates assigned to it; (please confirm)
- Item has area or length less than 5 or 2, respectively;
- Item has zero geometry. That means the dataset contains one or more features without geometry assigned to it; (please confirm);
- Item has geometry with a different type than that established for the layer in `feature_type`;
- Duplicate item. Two items are duplicated if their geohashes of length 9 are the same;
- Item with non-closed geometry when expected, _e.g._ polygons;
- Item with very large geometry. Currently, if area or length exceeds 2,147,483,647;
- The leftmost two bits are reserved for possible future use and, for the time being, are always set to zero.