Med omvänd geokodning kan andra spatiala objekt automatiskt relateras och kopplas till det objekt som redigeras. Exempelvis närmaste adress, fastighet, säljområde eller annat inom eller utom organisationen.
Vid omvänd geokodning används den geografiska mittpunkten (centroiden) av objektet som redigeras för att analysera om det finns andra objekt som kan relateras. Valda attribut från det andra objektet kopieras och fylls i rätt fält per automatik.
Enbart ett objekt kan relateras. Om måltabellen är ett punktlager relateras den närmsta punkten till centroiden av det objektet som redigeras. Är målet ett polygonlager med överlappningar väljs det första objektet som hittas utan någon sortering.
Namespace
urn:se.viamap.weave.spatial.edit.reversegeocode#1.0
Tags
spatial
Attribut
Namn | Typ | Krävs | Multiplicitet | Beskrivning |
---|---|---|---|---|
id | string | ja | 1…1 | Unikt id |
edit | string | nej | 0…n | Referens till spatial edit konfiguration. Kan lämnas blankt och användas i annan konfiguration |
edittype | string | nej | 1…1 | Kommaseparerad när omvända geokodningen ska appliceras. Giltiga värden är c, u, d (create, update, delete). Standardvärde är “c,u“ |
spatialEngine | string | ja | 1…1 | Referens till Spatial Engine där den omvända geokodningen ska appliceras |
typeName | string | ja | 1…1 | Tabell i Spatial Engine |
buffer | integer | nej | 0…1 | Lägg till buffer som för att öka sökområdet. Kan behövas om målet är ett punktlager. Vid flera träffas väljs den närmsta |
bufferCrs | string | nej | 0…1 | Koordinatreferenssystem som ska användas för att beräkna buffert. Exempelvis enhet för målet är geografiska koordinater (WGS84) . |
filter | string | nej | 0…n | CQL som appliceras på målet. |
parameter | ref: parameter | ja | 1…n | Koppla referens till parameter i spatial edit med kolumn i måltabell i Spatial Engine. |
condition | ref: condition | nej | 1…1 | Definiera logisk villkor för att omvända geokodningen kan genomföras |
Sub-tags
parameter
Koppla referens till parameter i spatial edit med kolumn i måltabell i Spatial Engine.
Attribut
Namn | Typ | Krävs | Multiplicitet | Beskrivning |
---|---|---|---|---|
parameter | string | ja | 1…1 | ID för parameter i Spatial Edit |
column | string | ja | 1…1 | Kolumn/fält i måltabell i Spatial Engine. Kan också specificeras som en mall med flera kolumnreferenser. Exempel:
|
Sub-tags
condition
Definiera logisk villkor för att omvända geokodningen kan genomföras
Sub-tags
filter
Definiera ett villkor med CQL-filter mot de attributvärden som redigeras. Även användarattribut kan användas för filtrering.
Exempel
<and> <!-- Enbart användare som tillhör kund 'abc123' möter villkoret --> <filter>${user.tenantId} = abc123</filter> <!-- Status-fältet måste vara 1 eller 2 --> <filter>status IN (1,2)</filter> </and>
and
Definiera flera villkor där alla måste uppfyllas för att gå vidare
Exempel
<and> <valueequal> <parameter>status</parameter> <value>1</value> </valueequal> <valueequal> <parameter>status</parameter> <value>2</value> </valueequal> </and>
or
Definiera flera villkor där minst ett måste uppfyllas för att gå vidare
Exempel
<or> <valueequal> <parameter>status</parameter> <value>1</value> </valueequal> <valueequal> <parameter>status</parameter> <value>2</value> </valueequal> </or>
userattribute
Definiera villkor där ett användarattribut måste överensstämma med ett värde
Attribut
Namn | Typ | Krävs | Multiplicitet | Beskrivning |
---|---|---|---|---|
key | string | ja | 1…1 | Nyckel för användarattribut |
value | string | ja | 1…1 | Värde |
Exempel
<userattribute> <key>status</key> <value>1</value> </userattribute>
valueequal
Definiera ett villkor där ett attributvärde ska överensstämma med ett värde
Attribut
Namn | Typ | Krävs | Multiplicitet | Beskrivning |
---|---|---|---|---|
parameter | string | ja | 1…1 | ID för parameter i Spatial Edit |
value | string | ja | 1…1 | Värde |
Exempel
<valueequal> <parameter>status</parameter> <value>1</value> </valueequal>
valuenotequal
Definiera ett villkor där ett attributvärde inte ska överensstämma med ett värde
Attribut
Namn | Typ | Krävs | Multiplicitet | Beskrivning |
---|---|---|---|---|
parameter | string | ja | 1…1 | ID för parameter i Spatial Edit |
value | string | ja | 1…1 | Värde |
Exempel
<valueequal> <parameter>status</parameter> <value>1</value> </valueequal>
Exempel
<?xml version="1.0" encoding="UTF-8"?> <config xmlns="urn:com.cohga.server.config#1.0" xmlns:edit="urn:com.cohga.spatial.edit#1.0" xmlns:rgcedit="urn:se.viamap.weave.spatial.edit.reversegeocode#1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <!-- Enkel mappning --> <rgcedit:spatial id="rgc.mobile_substation.property"> <edit>edit.mobile_substation</edit> <spatialEngine>gis</spatialEngine> <typeName>property</typeName> <parameter> <parameter>property_id</parameter> <column>object_id</column> </parameter> <parameter> <parameter>property_designation</parameter> <column>property_designation</column> </parameter> </rgcedit:spatial> <!-- Avancerad mappning med filter, buffer och logiskt villkor --> <rgcedit:spatial id="rgc.mobile_substation.address"> <edit>edit.mobile_substation</edit> <spatialEngine>electricity</spatialEngine> <typeName>mobile_substation</typeName> <!-- Buffer 100 meter --> <buffer>100</buffer> <!-- Spacificera crs for buffert. T.ex.: crs för spatial källa är WGS 84 --> <bufferCrs>EPSG:3857</bufferCrs> <!-- Apply filter(s) on spatial source --> <filter><![CDATA[address_status <> 'planned']]></filter> <!-- Kör enbart om villkoren uppfylls --> <!-- T.ex. parameter status måste vara antingen 1 eller 2 --> <condition> <filter>status IN (1,2)</filter> </condition> <!-- Mappa mål-parameter i spatial edit med kolumn i spatial källa --> <parameter> <parameter>address_id</parameter> <column>entity_id</column> </parameter> <parameter> <parameter>postal_address</parameter> <column>${address_area} ${address_place_number}${address_place_number_letter}</column> </parameter> <parameter> <parameter>postal_number</parameter> <column>postalnumber</column> </parameter> <parameter> <parameter>postal_area</parameter> <column>area</column> </parameter> </rgcedit:spatial> </config>