# HG changeset patch # User Tim Englich # Date 1263824245 0 # Node ID 3784cf498ab7b737f95142c032f33930762b6145 # Parent d265f5dc297953261f5bb5b1fea4b256a5ba324d Added Database-Schema and Testdata for the MapViewer-Interface gnv-artifacts/trunk@565 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r d265f5dc2979 -r 3784cf498ab7 gnv-artifacts/ChangeLog --- 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 + + * 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 * src/main/java/de/intevation/gnv/artifacts/GNVDefaultArtifact.java: diff -r d265f5dc2979 -r 3784cf498ab7 gnv-artifacts/doc/schema/externalinterface_schema.sql --- /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 diff -r d265f5dc2979 -r 3784cf498ab7 gnv-artifacts/doc/schema/externalinterface_testdata.sql --- /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