He buscado tanto en el 2008 y especificaciones de RFC7946 y no puede encontrar nada acerca de cuando dos GeoJSON objetos serían considerados iguales. Me pregunto si alguien me puede ilustrar?
A mí me parece que las opciones son:
Dos GeoJSON de los objetos que contienen la misma geometría son nunca iguales, y ambos son claramente características únicas.
Dos GeoJSON objetos son equivalentes si su geometría de coordenadas son exactamente igual, independientemente de su tipo de geometría.
Dos GeoJSON objetos son equivalentes sólo si su geometría - ambas coordenadas y el tipo son exactamente iguales.
Opción 1 plantea preguntas sobre el manejo de las afirmaciones acerca de la misma geometría a partir de múltiples fuentes, así como la identificación exclusiva de ellos.
Opción 2 plantea preguntas sobre el manejo de múltiples geometría tipo de declaraciones, que se convierte de hecho en un multi-valor de la propiedad
Opción 3 plantea preguntas acerca de GeometryCollection la afirmación de múltiples geometrías que contienen las mismas coordenadas, pero diferentes tipos de
El GeoJSON-LD propuestas parece sugerir una combinación de las tres opciones son posibles a través de @id, lo que significa que la igualdad está fuera de la especificación RFC y no definido sin necesidad de conectar a la propiedad.
He sido la codificación de todos mis geometrías como único base64 data:urls
con la polilínea algoritmo que funciona bien, y han permitido que el tipo de geometría de ser multi-valuadas y se fusionaron todas las demás propiedades.
Mi pensamiento es tanto el properties
objeto y miembros extranjeros son explícitamente fuera de la especificación, por lo que puede ser de forma segura combinado, aunque no estoy seguro de cómo corregir la semántica de los que son.
Ejemplo a continuación:
[{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [[123,456],[456,789],[789,012],[012,234]]
}
"properties": {
"name": "Bob",
},
},
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [[123,456],[456,789],[789,012],[012,234]]
}
"properties": {
"name": "Jane",
},
},
"type": "Feature",
"geometry": {
"type": "MultiPoint",
"coordinates": [[123,456],[456,789],[789,012],[012,234]]
}
"properties": {
"name": "Fred",
},
},
"type": "GeometryCollection",
"geometries" : {
{
"type": "Polygon",
"coordinates": [[123,456],[456,789],[789,012],[012,234]]
},
{
"type": "MultiPoint",
"coordinates": [[123,456],[456,789],[789,012],[012,234]]
}
}
"properties": {
"name": "Mary",
},
}]
No tengo la rep agregar etiquetas para JSON-LD o GeoJSON-LD, tal vez alguien más podría para mí.