Web Service SITIDATA

Introducción

El Web Service de georreferenciación se define como una herramienta que permite intercambiar datos entre sistemas heterogéneos, orientados al proceso de normalización y georreferenciación de direcciones catastrales, mediante estándares definidos, de manera controlada a través de la intranet/Internet con Apache. Al ser consumido por aplicaciones del negocio, se identifica como una herramienta que recibe una solicitud, la envía al servicio central de GeoData a través de TCP/IP vía socket, éste la normaliza, valida, enriquece y georreferencia, retornándola al Web Service para que a su vez sea presentada al usuario a través de un XML, JavaScript Object Notation (JSON).

ESQUEMA GENERAL

        Ilustración 1 Esquema General

COMPONENTES Y CARACTERÍSICAS

 

USUARIO FINAL 

Aplicaciones WEB o de escritorio con filosofía Cliente / Servidor orientadas al usuario final  que acceden a servicios remotos, normalmente a través de una red de telecomunicaciones. 

 

INTRANET / INTERNET 

Red de ordenadores que utiliza tecnología Internet para compartir dentro de una  organización parte de sus sistemas de información y sistemas operacionales. El término  intranet se utiliza en oposición a internet, una red entre organizaciones, haciendo referencia  por contra a una red comprendida en el ámbito de una organización. 

 

REST 

Una implementación concreta de un servicio web REST sigue cuatro principios de diseño  fundamentales: 

  • Utiliza los métodos HTTP de manera explícita 
  • No mantiene estado 
  • Expone URIs con forma de directorios 
  • Transfiere XML, JavaScript Object Notation (JSON) 

Una de las características claves de los servicios web REST es el uso explícito de los  métodos HTTP, siguiendo el protocolo definido por RFC 2616. Por ejemplo, HTTP POST  se define como un método productor de datos, cuyo uso está pensado para que las  aplicaciones cliente obtengan recursos, busquen datos de un servidor web, o ejecuten una  consulta esperando que el servidor web la realice y devuelva un conjunto de recursos. 

 

SERVIDOR DE GEODATA 

Componente del Sistema de Información Geográfica de Servinformación que permite  resolver las direcciones de una ciudad en un resultado de direcciones normalizadas,  validadas, enriquecidas y georreferenciadas (coordenadas según el sistema de  proyección). 

 

NIVEL DE CONCURRENCIA 

El nivel de concurrencia se define como una propiedad de los sistemas en la cual los  procesos de un cómputo se hacen simultáneamente, y pueden interactuar entre ellos. Para  el Web Service, el nivel de concurrencia se define como Alto, ya que la infraestructura de  servidores en la nube en la cual se encuentra implementado (Google Cloud) se caracteriza  por la autoescalabilidad y la implementación de autobalanceadores de carga, lo cual  permite que el número de servidores que soportan el servicio se adapten de forma  automática a las necesidades de los usuarios.

 

TIEMPO PROMEDIO POR TRANSACCIÓN 

Una transacción es una unidad de programa que accesa y posiblemente actualiza varios  elementos de datos. El tiempo promedio por transacción de la plataforma oscila entre 200  y 400 milisegundos. 

 

PROCESO 

Los usuarios a través de las aplicaciones, ingresan y modifican información relevante al  negocio, dentro de esta data se encuentran las direcciones catastrales que deben ser  normalizadas, validadas, enriquecidas y georreferenciadas. Es particularidad del  desarrollador del sistema crear un vínculo entre dichas aplicaciones y el Web Service de  GeoData para obtener los resultados ya sea registro a registro o a través de un proceso en  lotes que permita el consumo del Web Service de forma masiva. 

 

MECANISMOS DE AUTENTICACIÓN 

Existen varios sistemas de autenticación en una aplicación web. Las nuevas tendencias en  cuanto al desarrollo web moderno proponen la autenticación por medio de Tokens donde  el backend es un API RESTful sin información de estado, stateless. Cada petición que haga  el usuario va acompañada de un Token en la cabecera. Este Token no es más que una  firma cifrada que permite a la plataforma identificar al usuario.  

 

Un Token también añade más seguridad ya que, por ejemplo, no utiliza cookies para  almacenar la información del usuario y evita que manipulen la sesión que se envía al  backend.

 

MÉTODOS DE CONSUMO

 

Asistido - GeoAsisted 

Este método se utiliza para enriquecer y validar las equivalencias de cada dirección enviada  al sistema. La URL y la forma de envió de los datos es la siguiente: 

URL: https://sitidata-stdr.appspot.com/api/geoassisted/ 

Nota: Para realizar una prueba pueden descargar el aplicativo de Google POSTMAN como se  muestra en las imágenes 

 

En la sección Headers se deben agregar los siguientes valores: 

  • En key se va la palabra Authorization 
  • En value se debe adicionar la palabra Token seguida del token de autorización  

asignado. 

  • En Body se ingresa la siguiente información: 


"city":"Bogota","address":"cll 84 24 78",  

"chain_geo":"01|T|4|4|T|8|F|3|2|T|1" 

}

Ejemplo: 

Respuesta: 

PARÁMETROS DE ENTRADA

 

Descripción de los parámetros de entrada: 

  • "address": Valor en el que se identifica la dirección catastral de una unidad habitacional. 
  • "city": Valor que debe indicar el origen o ubicación de la dirección, asociada al nombre o  codificación de la dirección. 
  • "chain_geo": Valor opcional que indica la configuración del georeferenciador.

PARÁMETROS DE SALIDA

 

Listado de posibles direcciones equivalentes a la ingresada:

CAMPO 

DESCRIPCION

DIRECCIONTRADUCIDA 

String(120)

Es el resultado de la traducción de la dirección.

VALIDACION 

Valor en porcentaje para determinar la existencia de una  dirección en las bases de datos de Servinformación.  Aplica Sitidata

FUENTE 

Malla Fuente de Georreferenciación (ANTIGUA, NUEVA).  No disponible en el Geo Estándar.

DIRALTERNA 

Es la dirección equivalente en la otra malla, si existe.

BARRIOTRADUCIDO 

String(40)

Es el barrio que tradujo si el usuario lo escribió.

CODIGODIRECCION 

String(120)

Código de dirección.

CODIGODIRECCIONENCONTRADO String(120)

Código de dirección encontrado.

NIVSOCIO 

integer(1)

Estrato de la dirección

NIVSOCIO_FRENTE 

integer(1)

Estrato del frente

MANZANA 

String(14)

Manzana a la que pertenece la dirección.

MANZANA_FRENTE 

String(14)

Manzana del frente.

 

CAMPO 

DESCRIPCION

CODBAR 

Código del Barrio en donde se encuentran las  coordenadas geográficas de la dirección

BARRIO 

String(50)

Nombre del barrio al que pertenece la dirección.

CODBAR_FRENTE 

Código del barrio donde se ubica la manzana frente a la  dirección

BARRIO_FRENTE 

String(50)

Nombre del barrio del frente

CODLOC 

Código de Localidad o Comuna a la que pertenece el  barrio donde se ubica la dirección

LOCALIDAD 

String(30)

Nombre de la localidad a la que pertenece la dirección.

COD_LOC_FRENTE 

Código de Localidad o Comuna donde se encuentra el  barrio del frente a la dirección

LOCALIDAD_FRENTE 

String(30)

Nombre de la localidad del frente.

CX 

Flotante

Coordenada X del punto. El punto (‘.’) se toma como  separador decimal (valor numérico). Si el sistema de  coordenadas que se solicita es cartesianas se retorna el  valor en X. Si se solicita en Lat/Lon, se retorna la longitud.

CY 

Flotante

Coordenada Y del punto. El punto (‘.’) se toma como  separador decimal (valor numérico). Si el sistema de  coordenadas que se solicita es cartesianas se retorna el  valor en Y. Si se solicita en Lat/Lon, se retorna la latitud.

ZONA 

String(30)

Es el valor de la zona. 

ZONA_FRENTE 

String(30)

Es el valor de la zona del frente.

 

CAMPO 

DESCRIPCION

ZONA2 

String(30)

Es el valor de la zona Alterna. 

ZONA2_FRENTE 

String(30)

Es el valor de la zona Alterna del frente.

ZONA POSTAL 

Hace referencia a la zona postal a la cual pertenece la  dirección enviada esta tendrá 9 posiciones 

ESTADO 

String(1)

Un carácter. Puede tomar los siguientes valores: A Aproximado con geo al 100% 

B Normalizado y Georreferenciado Exacto C Intraducible 

D Normalizado y georreferenciado aproximado E Normalizado y no georreferenciado 

F Normalizado por cruce y georreferenciado exacto G Normalizado por cruce y no georreferenciado H Atípicas 

I Normalizado por barrio georreferenciado J Normalizado por barrio no georreferenciado K Georreferenciado a centroide de barrio L Normalizado por sitio y georreferenciado M Normalizado y georreferenciado por predio N Normalizado y georreferenciado por predio MZ O Georreferenciado a centroide de localidad /  comuna 

R Direcciones Rurales 

W Apartados aéreos 

X Ciudad disponible no adquirida 

Y Georreferenciado por predio aproximado Z Ubicado por centroide del centro poblado