Recientemente, he pasado mucho tiempo convirtiendo nombres de campo perfectamente buenos como "Porcentaje de ciudadanos de 25 años o más con un título de licenciatura o superior" en cosas como "edbchogtr" para cumplir con el límite de nombre de campo de 10 caracteres del DBF.
En otro hilo ( "Curiosidades" en la especificación técnica de Shapefile ), geospatialpython comentó que "A pesar de las fallas, rarezas y limitaciones del formato de shapefile, persiste obstinadamente en el campo de SIG y alrededor de él. Cualquier otro intento de reemplazarlo ha sido demasiado inflado para simple almacenamiento de vectores o demasiado propietario ".
Esta actividad, junto con el comentario del Sr. Lawhead, me hace preguntarme:
- ¿alguna vez se han hecho intentos explícitos para reemplazar el archivo de forma como el omnipresente formato de almacenamiento e intercambio de datos de GIS?
- ¿Hay algún contendiente?
- Si ha habido formatos competitivos, ¿por qué han fallado?
- ¿Esri se ha negado a apoyarlos, o la historia es simplemente una de inercia tecnológica?
- Si no ha habido intentos ... ¿por qué no?
Parece que podríamos mejorar un poco para nosotros, tanto como desarrolladores y usuarios de SIG.
Respuestas:
Este es un tema que siempre surge. Puede que no tenga la respuesta correcta, pero puedo darle mi opinión personal .
La razón por la que son compatibles se puede atribuir a varias características sobre ellos, así que permítanme mencionar algunas.
Primero, hay una especificación . Quiero decir, tengo poco más de treinta años y esto existió desde que era un adolescente. Por lo tanto, es seguro decir que esta especificación ha existido por algún tiempo. Por supuesto, hay varios otros formatos que también se publican, pero la diferencia sobre este es que ...
¡Es relativamente simple! Está construido sobre el formato DBF , que en ese momento ya existía y era ampliamente compatible con varias plataformas / sistemas operativos. Ya había analizadores que podían leer la mitad de este formato (la parte DBF), por lo que facilitaba la compatibilidad con la adición adicional. Tienes una geometría? Claro, solo serialízalo y escríbelo. Estás listo. ¡Contrasta esto con una cobertura ! Intente explicar a alguien en términos simples lo que hace una limpieza de topología . No es trivial escribir una cobertura topológicamente limpia.
Lo más importante, creo que la razón # 1 para que los shapefiles sigan siendo populares es que son compatibles tanto en sistemas de código abierto como propietarios . ¿Qué SIG sabes que no admite archivos shape? Inaudito.
Como reemplazo, escuchamos sobre File GeoDatabases y Spatialite . Ambos formatos son muy superiores en términos de funcionalidad, flexibilidad, velocidad, etc., en comparación con Shapefiles. A su manera, tienen ciertas cosas que los hacen mejores entre sí en diferentes áreas, pero una comparación de spaceialite y FileGDB ciertamente está fuera del alcance de esta pregunta.
¿Creo que alguno de estos formatos reemplazará a Shapefiles? No en sus encarnaciones actuales .
¿Por qué?
No por un argumento tecnológico (después de todo, dije que eran superiores en ese aspecto), sino por algo más: licencias.
¿Cuáles son sus problemas?
FileGDB :
FileGDB proporciona interoperabilidad a través de la nueva API FileGDB. Sin embargo, esta API se proporciona en formato binario.por ESRI. Esto no es una especificación. Después de haber trabajado en el equipo de GeoDatabase en el pasado, puedo decirte que, al contrario de todos los teóricos de la conspiración que usan sombrero de papel de aluminio, esto no es malicioso en absoluto. Es porque las partes internas de la GeoDatabase cambian en cada versión. Publicar una especificación completa implicaría básicamente dar todos los detalles de cómo se debe mantener todo y luego documentar cuidadosamente los cambios en el formato con cada lanzamiento anual. No tiene sentido Entonces, la API FileGDB, aunque no es una especificación, abstrae todos esos pequeños cambios. ¡Y ahora se puede usar multiplataforma! Eso sí, ¡este es un gran paso adelante! Teniendo en cuenta la naturaleza conservadora de ESRI, esta es definitivamente una reacción en la dirección correcta.
Y, sin embargo, el soporte solo binario no hace feliz a nadie en el mundo del Código Abierto. ¿Cómo se aprovecha de portar algún código para decirle a otro sabor de Linux si ESRI no lo admite? No puedes Esto es lo que hace que Open Source sea poderoso, y ahora, no puede aprovechar esto. Si ESRI decide dejar de soportar Debian, eso es todo. Estás listo. Y no hay nada que puedas hacer para cambiarlo.
Spatialite :
Spatialite es impresionante porque obtiene toda la funcionalidad gratuita de SQLite . SQLite se usa en todas partes. Está en su teléfono Android, en su iPhone / iPad, en Firefox, en Google Chrome, en varios dispositivos comerciales integrados, puede continuar para siempre. Para convertirlo realmente en un Geoformat (y no solo para realizar operaciones de cuadro de límite tonto), debe aprovechar la misma biblioteca de geometría que utiliza PostGIS: GEOS . Lamentablemente, GEOS se basa en otra biblioteca de geometría aún más impresionante conocida como JTS . Todos los algoritmos en JTS son extremadamente poderosos, entonces, ¿cuál es el problema?
Bueno, JTS tiene licencia como Open Source LGPL , y LGPL es una licencia viral . JTS es LGPL, significa que GEOS es LGPL, significa spaceialite vinculado estáticamente con GEOS es LGPL. Esto apesta. ¿Por qué? Sin explicar demasiado las licencias de código abierto , puedo decirle que, por ejemplo, no puedo usar spaceialite en, por ejemplo, una aplicación de iPhone porque eso haría que toda mi aplicación de código abierto automáticamente (iOS solo permite enlaces estáticos). Cualquier tipo de licencia GPL (razonablemente) asusta a ESRI, y por lo tanto no lo tocarán con un poste de 10 pies. Por lo tanto, ArcGIS, el sistema SIG más popular del mundo, no admite (y probablemente nunca lo hará) nativa espacial. Esto lo mata automáticamente como un formato viable.
Y, por lo tanto, volvemos a los archivos de formas cutres que son compatibles en todas partes.
Actualización :
Aparentemente, mi respuesta fue lo suficientemente controvertida como para que alguien decidiera que estaba bien editar libremente y cambiar todo el significado de mi respuesta para poner su punto de vista. Por favor no hagas eso. Si no está de acuerdo conmigo, eso está completamente bien, simplemente publique su opinión en una respuesta diferente y deje que la comunidad decida. Enrollé las ediciones a mi respuesta para mostrar el significado original. Estoy agregando esta actualización en caso de que lea la respuesta editada que afirma que sqlite era un formato viable.
fuente
La parte SHP + SHX en sí misma no es tan mala. El verdadero problema radica en la parte DBF. Eso podría hacer con un nuevo formato, que admite unicode y todo tipo de tipos de campo modernos. El problema es conseguir que todo el software lo respalde bien.
fuente
GeoPackage es un sucesor prometedor. Es similar a Spatialite pero de OGC y ha sido adoptado por muchos softwares, incluidos ArcGIS y OGR.
Consulte la página web oficial http://www.geopackage.org/ y, por ejemplo, esta presentación: http://www.slideshare.net/JeffYutzler/geopackage-swg-overview
fuente
Al menos spaceialite tiene la intención, ver, por ejemplo, esta presentación http://www.sourcepole.ch/assets/2010/9/10/foss4g2010_spatialite.pdf
Por otro lado, creo que la razón principal por la que falló es que shp está bien soportado por muchas aplicaciones y solo tiene deficiencias menores.
Otros también comparten esta opinión:
http://www.spatiallyadjusted.com/2010/09/16/spatialite-is-not-the-shapefile-of-the-future/
Más ideas sobre la geodatabase de archivos Esri, spaceialite y autodesk sdf aquí: http://www.spatialdbadvisor.com/blog/121/the-shapefile-manifesto
fuente
Esri ha estado promoviendo las geodatabases de archivos durante varios años como reemplazo de los archivos de forma.
Más recientemente, han proporcionado una API que oculta cualquier rareza.
fuente
Un dialecto XML, como GML, definitivamente no está optimizado para operar grandes conjuntos de datos, pero puede usarse como un formato de intercambio entre software o entre plataformas.
No creo que haya ningún problema con la licencia (consulte la publicación de Ragi Yaser Burhum sobre las características virales de Spatialite) y es bastante fácil adaptar los analizadores existentes si es necesario.
fuente
Solo para llegar a esto desde una perspectiva diferente, no estoy seguro de que el uso de "Porcentaje de ciudadanos de 25 años o más con un título de licenciatura o superior" sea un nombre de campo perfectamente bueno. Si bien se pueden manejar espacios de mezcla y apóstrofes, si está escribiendo código o consultas, es más probable que presente errores.
En mi opinión, el futuro de la distribución de datos espaciales debería centrarse en la web y los servicios web, y la especificación WFS (que usa GML) está abierta y establecida. GeoJSON es más pequeño y puede ser más fácil trabajar con él en JavaScript. Sin embargo, con la compresión, los tamaños son comparables.
También me gustaría votar por las geodatabases personales de ESRI . Puede ser un formato de Microsoft a menudo difamado, pero admite ODBC, consultas SQL, vistas y permite a los no desarrolladores crear formularios de entrada de datos fáciles, e incluye al menos algún nivel de comprobaciones de integridad de datos (tipos de datos, longitudes, valores únicos) .
fuente