changeset 489:3784cf498ab7

Added Database-Schema and Testdata for the MapViewer-Interface gnv-artifacts/trunk@565 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Mon, 18 Jan 2010 14:17:25 +0000
parents d265f5dc2979
children be53566c1640
files gnv-artifacts/ChangeLog gnv-artifacts/doc/schema/externalinterface_schema.sql gnv-artifacts/doc/schema/externalinterface_testdata.sql
diffstat 3 files changed, 94 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/gnv-artifacts/ChangeLog	Mon Jan 18 13:43:50 2010 +0000
+++ b/gnv-artifacts/ChangeLog	Mon Jan 18 14:17:25 2010 +0000
@@ -1,3 +1,11 @@
+2010-01-18  Tim Englich  <tim.englich@intevation.de>
+
+	* doc/schema/externalinterface_testdata.sql: 
+	  Added Testdata to demonstrate how the different Tables has to be filled.
+	* doc/schema/externalinterface_schema.sql: 
+	  Added Schema for the DB-Schemaextention for providing the Data that is 
+	  required for the external Interface to the Mapviewer
+
 2010-01-18  Ingo Weinzierl <ingo.weinzierl@intevation.de>
 
 	* src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gnv-artifacts/doc/schema/externalinterface_schema.sql	Mon Jan 18 14:17:25 2010 +0000
@@ -0,0 +1,73 @@
+/* 
+ * 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
+ */
+create table fis_has_region (
+    id_fis varchar2(30 char) not null,
+    description varchar2(90 char),
+    geometry SDO.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,
+    id_mapservice varchar2(100 char) not null
+);
+
+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,
+    id_layer varchar2(30 char) not null,
+    id_group varchar2(30 char ),
+    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);
+ALTER TABLE layer_has_parameter ADD (CONSTRAINT fk_layer_has_parameter1) 
+      FOREIGN KEY (id_mapservice) 
+      REFERENCES fis_has_mapservice(id_mapservice);
+
+/**
+ * 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,
+    id_parameter NUMBER(10) not null /* Referenz zur Tabelle MEDIAN.PARAMETER */
+);
+
+
+ALTER TABLE mapservice_has_parameter ADD 
+      PRIMARY KEY (id_mapservice,id_parameter);
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gnv-artifacts/doc/schema/externalinterface_testdata.sql	Mon Jan 18 14:17:25 2010 +0000
@@ -0,0 +1,13 @@
+INSERT INTO fis_has_mapservice (id_fis,id_mapservice) VALUES
+('modeldata','BSH_IMS_Prediction_Model_Salinity'),
+('marnet','BSH_IMS_Marine_Environment_Monitoring_Network');
+
+INSERT INTO mapservice_has_parameter(id_mapservice,id_parameter) VALUES
+('BSH_IMS_Prediction_Model_Salinity',2);
+
+INSERT INTO layer_has_parameter(id_mapservice,id_layer,id_group,id_parameter) VALUES
+('BSH_IMS_Marine_Environment_Monitoring_Network', 'Sealevel', null, ?),
+('BSH_IMS_Marine_Environment_Monitoring_Network', 'Temperature', null, 1),
+('BSH_IMS_Marine_Environment_Monitoring_Network', 'Salinity', null, 2),
+('BSH_IMS_Marine_Environment_Monitoring_Network', 'OxygenSaturation', null, 31),
+('BSH_IMS_Marine_Environment_Monitoring_Network', 'Current', null, ?);
\ No newline at end of file

http://dive4elements.wald.intevation.org