PostGIS etablering

SOSI UML modellen kan benyttes for å generere opp alle tabeller og kolonner i PostGIS. En kan velge å benytte SOSI_navn eller UML/GML navn i databasen.

Krav til installasjon

PostGIS 2.0.x.

Trinn for trinn

  1. Database for PostGIS 2.0 eller høyere må være etablert
  2. Velg SOSI/Inspire UML modell (som følger ISO 19109) en vil etablere database for (selve databasen må være opprettet på forhånd med PostGIS 2.0 template og utvidelsen uuid-ossp hvis uuid velges for datatype til primærnøkkel)
  3. Velg Extensions -> GISTools for UML -> PostGIS -> Create database…
  4. Fyll inn dialogen med kobling til database og angi nytt databaseskjema. En kan velge å bruke SOSI navn eller UML/GML navn i databasen. Hvis en krysser av for Geosynkronisering så lages en endringsloggtabell og triggere som fyller denne ved endringer.
  5. Trykk Generer og databasen etableres (skjemafil/skript blir liggende i en katalog postgis under katalogen til prosjektfilen til EA(.eap))
  6. Hvis en velger å validere modellen så vil "System Output" vindu fylles med regler som kjøres og evt de feil og advarsler som er relevante for PostGIS etablering vil listes. Se liste over valideringsregler som kjøres
  7. Test databasen med for eksempel QGIS
  8. Sett opp mappinger til GML eller SOSI Syntaks med Deegree mapping, FME mapping eller Geoserver mapping.

Mappingregler

Tabeller

Klasser(som ikke er abstrakte) med stereotype featuretype, type eller ingen blir egne tabeller. I tillegg blir datatype der de inngår i en-mange eller mange-mange relasjon også en tabell (dvs de blir ikke forflatet). Arv blir løst opp slik at alle arvede elementer blir lagt inn på subtyper. Klasser må ligge i samme pakke under applicationSchema

Forflating

Attributter som peker på komplekse typer med maks multiplisitet 1 blir forflatet.

Flere geometrier i samme objekt

Postgis har mulighet for å lagre flere geometrier i samme tabell.

Geometri

Støtter konvertering av PUNKT, KURVE, FLATE, SVERM, GM_Surface, GM_Multisurface, GM_Point, GM_Curve, GM_Multipoint

En kan velge hvor streng restriksjon databasen skal kreve for geometri.  

Assosiasjoner og fremmednøkler/primærnøkler

Systemgenererte nøkler: Lager egen primærnøkkel (objid) i alle tabeller. I Datatype primærnøkkel kan en velge hvilken type denne skal være.
UUID: Hvis en huker av for endringslogg så blir også lokalid lagt inn med uuid og indeks.

Mange til mange relasjoner

Egen koblingstabell etableres for dette.

Komposisjon

Samme som attributt med over 1 i multiplisitet men modellert som en assosiasjon

Topologi

Kontrolleres ikke p.t.

Koordinatsystem

Valgt koordinatsystem legges inn som restriksjoner i tabeller