Wiki » Historique » Version 17

« Précédent - Version 17/28 (diff) - Suivant » - Version actuelle
Agnes Tellez Arenas, 03/08/2017 11:14


About WFS App Schema for BoreholeView

https://epos.brgm-rec.fr/geoserver/ows?service=wfs&version=2.0.0&request=GetFeature&TYPENAMES=gsmlp:BoreholeView&OUTPUTFORMAT=text/xml;%20subtype=gml/3.2&count=1&resolveDepth=*

# Trusted environment

This app schema has been successfully set up with those versions of GeoServer:
- BRGM ressource-rec: GeoServer 2.8.0
- BRGM epos-rec: GeoServer 2.9.2

# Link to resources

Several content are offered in https://forge.brgm.fr/svnrepository/epos/trunk/tools/geoserver/

# Tips for configuration of App-schema

## workspace

The content of workspaces (the gsmlp folder) should be put in your geoserver/data/workspaces.

## DB part (for xsd version 0.6.0)

App schema provided in SVN is actually set up for one table called "borehole_eu" with those columns:

boreholeid character varying NOT NULL,
gmlidentifier character varying,
name character varying,
gsmlpidentifier character varying,
description character varying(255),
purpose_href character varying(255),
purpose character varying(50),
boreholeuse character varying(50),
boreholeuse_href character varying(255),
status_href character varying(255),
status character varying(30),
drillingmethod_href character varying(255),
drillingmethod character varying(50),
operator character varying(50),
driller character varying(50),
drillstartdate date,
drillenddate date,
startpoint_href character varying(255),
startpoint character varying(30),
inclinationtype_href character varying(255),
inclinationtype character varying(30),
boreholematerialcustodian character varying(50),
boreholelength_m real,
elevation_m real,
elevation_srs character varying,
positionalaccuracy real,
source character varying,
parentborehole_uri character varying,
metadata_uri character varying,
genericsymbolizer character varying(50),
cored boolean,
accesstophysicaldrillcore boolean,
detaileddescription character varying(255),
detaileddescription_href character varying(255),
geophysicallogs character varying(255),
geophysicallogs_href character varying(255),
geologicaldescription character varying(255),
geologicaldescription_href character varying(255),
groundwaterlevel character varying(255),
groundwaterlevel_href character varying(255),
groundwaterchemistry character varying(255),
groundwaterchemistry_href character varying(255),
rockgeochemistry character varying(255),
rockgeochemistry_href character varying(255),
poregaschemistry character varying(255),
poregaschemistry_href character varying(255),
geotechnicalinfo character varying(255),
geotechnicalinfo_href character varying(255),
location_wgs84 geometry,

## app-schema.properties

The datastore part from gsmlp_BoreholeView.xml is linked to a app-schema.properties file.

This file actually indicate how app-schema should connect to your database.
It should be put in geoserver/WEB-INF/classes.

About WMS for BoreholeView

  • Creation of a table epos.borehole_sld for translating the SLD rules (from https://forge.brgm.fr/svnrepository/epos/trunk/sld/): this operation is not automatic...
    CREATE TABLE epos.borehole_sld
    (
      pk_rule serial NOT NULL,
      name character varying(500),
      filtre_purpose_href character varying(500),
      filtre_length_greater integer,
      filter_length_lessequal integer,
      style1_symbol character varying(100),
      style1_size numeric,
      style1_color character varying(11),
      style2_symbol character varying(100),
      style2_size numeric,
      style2_color character(11),
      CONSTRAINT sldpk PRIMARY KEY (pk_rule)
    )
    
  • if the SLD is updated, the table has to be updated as well. The best to do so is to update the function epos.insert_borehole_sld() which contains everything to create the SLD table. THen to refresh the materialized view.
    -- select * from epos.insert_borehole_sld();
    -- REFRESH MATERIALIZED VIEW  epos.borehole_eu_06_sld;
    
  • Creation of a materialized view borehole_eu_06_sld joining the data and SLD rules. The Mapfile does only contain one Style (CLASS) rule, using the values from the database (performaces are better that way).
    CREATE MATERIALIZED VIEW epos.borehole_eu_06_sld AS 
     SELECT borehole_eu_06.location_wgs84::geometry(Point,4326) AS geom,
        borehole_eu_06.boreholeid,
        borehole_eu_06.purpose_href,
        borehole_eu_06.purpose,
        borehole_eu_06.status,
        borehole_eu_06.operator,
        borehole_eu_06.driller,
        borehole_eu_06.drillstartdate,
        borehole_eu_06.drillenddate,
        borehole_eu_06.startpoint,
        borehole_eu_06.inclinationtype,
        borehole_eu_06.boreholematerialcustodian,
        borehole_eu_06.elevation_m,
        borehole_eu_06.boreholelength_m,
        sld.name,
        sld.style1_symbol,
        sld.style1_color,
        sld.style1_size,
        sld.style2_symbol,
        sld.style2_color,
        sld.style2_size
       FROM epos.borehole_eu_06,
        epos.borehole_sld sld
      WHERE borehole_eu_06.purpose_href::text = sld.filtre_purpose_href::text AND borehole_eu_06.boreholelength_m > sld.filtre_length_greater::double precision AND borehole_eu_06.boreholelength_m <= sld.filter_length_lessequal::double precision
    WITH DATA;
    
    

HOW TO - détail de mise en place WFS NRZ (Natural Risk Zones) sur données Pangeo (Europe)

howToWFSpangeoGeoserver