Как установить геометрию объекта как объединение нескольких геометрий
Я хочу организовать свою административную географию на основе стандарта GeoSPARQL. Этот вопрос вызван очевидным соображением, что административные единицы являются иерархическими и вложенными. Так, например, geo:feature
(см. http://www.opengis.net/ont/geosparql) Италия geo:hasGeometry
IT
Затем у меня есть еще 20 функций, соответствующих 20 регионам (административные округа первого уровня).
Каждый объект имеет соответствующую геометрию (в соответствии со стандартом ISO_3166-2: IT они называются: IT-65
, IT-77
, IT-78
, так далее.)
Допустим, у меня есть три уровня административного деления в Италии, поэтому для ADM0
п =1, ADM1
п = 20, ADM2
n = 100 и ADM3
п =10000. В общем, я должен определить 10121 геометрию, но на практике мне нужно только 10000, так как ADM0
geo:hasGeometry
что соответствует объединению 20 геометрий ADM1
функции. Как формализовать это в сериализации RDF?
ex:Italy a geo:Feature
geo:hasGeometry ex:IT
или вместо этого я могу указать на несколько геометрий
ex:Italy a geo:Feature;
geo:hasGeometry ex:IT-65 ;
...
geo:hasGeometry ex:IT-78 .
Будет ли это подразумеваться во второй декларации, что ex:Italy
не определяется какой-либо отдельной геометрией, а только полным объединением всех геометрий?
1 ответ
На самом деле, лучший способ получить объединение геометрий - это функция объединения, предложенная OGC в GeoSPARQL.
Вот ссылка на документацию: GeoFunction UNION
Очевидно, позаботьтесь о CRS как обычно.