Mercurial > dive4elements > gnv-client
view gnv-artifacts/doc/schema/externalinterface_schema.sql @ 1145:dfe1ac687c7f tip
added tags
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Fri, 28 Sep 2012 12:16:15 +0200 |
parents | f953c9a559d8 |
children |
line wrap: on
line source
/* * Copyright (c) 2010 by Intevation GmbH * * This program is free software under the LGPL (>=v2.1) * Read the file LGPL.txt coming with the software for details * or visit http://www.gnu.org/licenses/ if it does not exist. */ /* * Lookup-Tabelle für das FIS anhand eines Gebietes. * Diese Tabelle ist in der ArcSDE als Layer zu integrieren. * Die Inhalte der Spalte id_fis müssen mit den vergebenen IDs * in der Konfiguration des Artefaktservers übereinstimmen. * * Abbildung als Layer in der ArcSDE * Das hier bereitgestellte SQL ist lediglich als Anhalt zu betrachten. */ create table fis_has_region ( id_fis varchar2(30 char) not null, /* TODO maximale Länge bestimmen und ggf. anpassen.*/ description varchar2(90 char), geometry ??? not null ); ALTER TABLE fis_has_region ADD PRIMARY KEY (id_fis); /* * Lookup-Tabelle für das FIS anhand eines Mapservices. * Die Inhalte der Spalte id_fis müssen mit den vergebenen IDs * in der Konfiguration des Artefaktservers übereinstimmen. * Die Inhalte der Spalte id_mapservice müssen mit den vergebenen * IDs der Services im Mapviewer übereinstimmen. */ create table fis_has_mapservice( id_fis varchar2(30 char) not null, /* TODO maximale Länge bestimmen und ggf. anpassen.*/ id_mapservice varchar2(100 char) not null /* TODO maximale Länge bestimmen und ggf. anpassen.*/ ); ALTER TABLE fis_has_mapservice ADD PRIMARY KEY (id_fis,id_mapservice); /** * Lookuptabelle zwischen einer LayerID und dem dazugehörigen * Mapservice und den im Layer dargestellten Parameter. * Fremdschlüsselbeziehung zu der Tabelle fis_has_mapservice. * Primärschlüssel: id_mapservice, id_layer, id_parameter * id_parameter referenziert zusätzlich die Tabelle MEDIAN.PARAMETER. * * Auf eine explizite Abbildung von GroupLayern kann verzichtet werden, * da sie lediglich einen "ordnenden" Charakter haben. * vgl. S 52 Pflichtenheft. * * Über id_group wird abgebildet ob ein Layer zu einer Gruppe von * Layern gehört. */ create table layer_has_parameter( id_mapservice varchar2(100 char) not null, /* TODO maximale Länge bestimmen und ggf. anpassen.*/ id_layer NUMBER(10) not null, /* TODO maximale Länge bestimmen und ggf. anpassen.*/ layer_name varchar2(30 char) not null, /* TODO maximale Länge bestimmen und ggf. anpassen.*/ id_group varchar2(30 char ), /* TODO maximale Länge bestimmen und ggf. anpassen.*/ id_parameter NUMBER(10) not null /* Referenz zur Tabelle MEDIAN.PARAMETER */ ); ALTER TABLE layer_has_parameter ADD PRIMARY KEY (id_mapservice,id_layer,id_parameter); /** * Lookuptabelle ob ein Mapservice genau einen Parameter darstellt. * Wenn in dieser Tabelle nichts vorhanden ist muss unter zurhilfenahme * der Layer-ID in der Tabelle layer_has_parameter gesucht werden. * Die Inhalte der Spalte id_mapservice müssen mit den vergebenen * IDs der Services im Mapviewer übereinstimmen. * id_parameter referenziert zusätzlich die Tabelle MEDIAN.PARAMETER. */ create table mapservice_has_parameter( id_mapservice varchar2(100 char) not null, /* TODO maximale Länge bestimmen und ggf. anpassen.*/ id_parameter NUMBER(10) not null /* Referenz zur Tabelle MEDIAN.PARAMETER */ ); ALTER TABLE mapservice_has_parameter ADD PRIMARY KEY (id_mapservice,id_parameter);