Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Extensible Storage Engine wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Oracle Database wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Functional Database Model wikipedia , lookup
Relational model wikipedia , lookup
ContactPoint wikipedia , lookup
Versant Object Database wikipedia , lookup
AN ORGANISATION FOR A NATIONAL EARTH SCIENCE INFRASTRUCTURE PROGRAM WFS IMPLEMENTATION DISCUSSION Alistair Ritchie Senior Information Geoscientist GeoScience Victoria Department of Primary Industries Introduction • Commercial applications – Snowflake Software (GO Publisher) – ERDAS Web (Apollo) – ESRI • Bespoke applications • Open source applications – Groundwater Information Network (GIN) Mediator – Deegree WFS (using virtual output formats) – GeoServer (with Application Schema module) • GSV Experience • Summary Constraints • Serving Application Schema that: – comply with OGC Simple Features Profile for GML – Level 1 – extend GML v 3.1 • From Web Feature Services that: – Meet the OGC WFS Implementation Specification v1.1 – Meet the OGC Filter Specification v1.1 Commercial Applications • Snowflake Software GO Publisher WFS – – – – – Create GML-SF1 WFSs on Oracle databases GUI driven database to schema mapping and configuration Will be used by British Geological Survey for its production services Not quite GeoSciML ready Elegance of solution comes at a cost • ERDAS Web: Apollo – Formerly Ionic Red Spider – Uncertain Simple Features Level 1 Support • ESRI WFS – No Simple Features Level 1 Support – Would require a mediated approach Bespoke Applications • Implemented at GeoScience Australia and BRGM (France) • Intended as interim solutions • Very tightly coupled to particular schema in particular databases • Hard-coded – not configurable • Limited functionality • Not compliant with OGC WFS specifications Deploying a WFS Steps and Skills • The following steps are taken when setting up a WFS • Presented as a bar to give an idea of relative effort Installation (System administrator, ITS provider) Data mapping (Database admin/owner, domain expert) Configuration (WFS user) Programming or Magic (WFS user*) • Installation, data mapping, configuration always required • Programming depends on the solution * Preferably one you don’t like. Groundwater Information Network (GIN) Mediator • Framework for mediating between a client and a network of services • Developed by the Geological Survey of Canada <<xml>> GeoSciML Request Client <<gml>> GeoSciML Response GIN Mediator <<xslt>> Request <<xslt>> Response Source WFS(s) <<xsd>> Private Schema Datastore Groundwater Information Network (GIN) Mediator Open Source Groundwater Information Network (GIN) Mediator Geol. Survey of Canada Datastores Any Web Feature Service Effort Install Database Mapping Skills/Knowledge Database Management/SQL (data for source service); Source WFS Configuration; Sound understanding of target GML schema; Sound understanding of XSLT; Apache Cocoon; Building and deploying Java applications Pros Extremely powerful; Can be used to serve complex features from simple feature services; Perfect for networks of heterogeneous services; Advanced features such as full vocabulary mapping support Cons Excessive solution for most users; Complicated - configuration of a number of components GeoSciML/ AuScope Users Geological Survey of Canada; British Geological Survey (GeoSciML Testbed – on ArcIMS); APAT, Italy (GeoSciML Testbed – on ArcIMS) Config (xsd) Program (xslt) Deegree WFS • Java OCG Web Server Application • Developed at the University of Bonn, Germany <<xml>> GeoSciML Request Client <<gml>> GeoSciML Response Virtual outputFormat <<xslt>> inFilter <<xslt>> outFilter Deegree WFS <<xsd>> Private Schema Datastore Deegree WFS Open Source Deegree WFS (using virtual output format) Lat/Lon, University of Bonn Datastores Oracle; PostGIS; ArcSDE; Shapefile; ‘Generic SQL’ (incl. SQL Server; DB2) Effort Database Mapping Skills/Knowledge Database Management/SQL; Sound understanding of GML schema; Sound understanding of XSLT Pros Serves GeoSciML from one application; Allows data-type polymorphism; Stable existing implementations Cons Multiple, and tricky, configurations for requests and responses; Limited Documentation; Small community; Dead end: version 2 to be replaced by version 3 – a complete rebuild GeoSciML/ AuScope Users GeoScience Victoria (testbed and demonstration services); Arizona Geological Survey/US Geological Survey; Czech Geological Survey Config (xsd) Program (xslt) Data-type Polymorphism One property, but the value can have multiple data types. For example ‘Proportion’: <gsml:proportion> <gsml:CGI_TermValue> <gsml:value codeSpace=“urn:cgi:classifierScheme:GSV:Proportion"> dominant </gsml:value> </gsml:CGI_TermValue> </gsml:proportion> TERM Data-type Polymorphism One property, but the value can have multiple data types. For example ‘Proportion’: <gsml:proportion> <gsml:CGI_TermValue> <gsml:value codeSpace=“urn:cgi:classifierScheme:GSV:Proportion"> dominant </gsml:value> </gsml:CGI_TermValue> </gsml:proportion> <gsml:proportion> NUMERIC <gsml:CGI_NumericRange> <gsml:lower> <gsml:CGI_NumericValue> <gsml:principalValue uom="urn:ogc:def:uom:UCUM:percent"> 75 </gsml:principalValue> </gsml:CGI_NumericValue> </gsml:lower> <gsml:upper> <gsml:CGI_NumericValue> <gsml:principalValue uom="urn:ogc:def:uom:UCUM:percent"> 100 </gsml:principalValue> . . . ETC . . . </gsml:proportion> TERM RANGE Deegree WFS Open Source Deegree WFS (using virtual output format) Lat/Lon, University of Bonn Datastores Oracle; PostGIS; ArcSDE; Shapefile; ‘Generic SQL’ (incl. SQL Server; DB2) Effort Database Mapping Skills/Knowledge Database Management/SQL; Sound understanding of GML schema; Sound understanding of XSLT Pros Serves GeoSciML from one application; Allows data-type polymorphism; Stable existing implementations Cons Multiple, and tricky, configurations for requests and responses; Limited Documentation; Small community; Dead end: version 2 to be replaced by version 3 – a complete rebuild GeoSciML/ AuScope Users GeoScience Victoria (demonstration services); Arizona Geological Survey/US Geological Survey; Czech Geological Survey Config (xsd) Program (xslt) GeoServer (with Application Schema module) • Java OCG Web Server Application including WFS • Incorporates the ‘application schema’ module developed by AuScope <<xml>> GeoSciML Request Client GeoServer <<gml>> GeoSciML Response App-Schema Module Datastore GeoServer (with Application Schema module) Open Source Geoserver (with Application Schema module) Various incl. AuScope Datastores PostGIS; Oracle; ArcSDE; SQL Server; MySQL; Shapefile; Vector Product Format ; WFS Effort Database Mapping Skills/Knowledge Database Management/SQL; Sound understanding of target GML schema Pros Serves GeoSciML from one application; Single configuration for responses and requests; Wide selection of source datastores; Strong community with heavy OGC involvement; Well documented Cons No support for data-type polymorphism; Currently in testing – released in GeoServer v2.0 (beta) in July 2009 GeoSciML/ AuScope Users Minerals and Resources Tasmania (currently deploying); GeoScience Victoria (web service back-end); NTGS (future deployment); PIRSA (test services); Arizona Geological Survey (evaluation); Growing … Config (xml) GSV Experience Testbeds and Demonstrators • GeoSciML Testbed 3 • Demonstrator services for AuScope – GeoSciML and Earth Resources ML • Used Deegree WFS – Initially hard (XSLT), ultimately tricky but capable • Data mapping – – – – Where the vast majority of the work is Database model to community schema Database content to community vocabularies Will be required regardless of the solution • Significant increase in the quality of data delivered – Content and/or quality improvements are more than worth the effort GSV Experience Production Services • Migrating to Production Services – To be deployed July/August ’09 – Real time access to ‘publishable’ data in our production systems – Interim Deegree solution, but … • Service Oriented Architecture – Developed a GeoServer web service datastore – AuScope embedded software engineer – Service to service mapping – Will overcome current GeoServer polymorphism shortcomings • Will serve features from the following schema: – GeoSciML – Mineral Occurrences – GeoSciML Boreholes (medium term) Summary Application Effort Comments GeoServer - Easiest to configure - Australian community and support - Ongoing AuScope development (next two years) - Commercial support available - Will meet needs of most users Deegree - Tricky to configure, requires XSLT skills - Will meet most GeoSciML use-cases - Suitable for users serving complex data GIN Mediator - Overkill for most users and complex to deploy and configure - Powerful solution for users with non-OGC or non-community WFSs Key (Effort) Installation Data mapping Configration (WFS) Configuration (XSLT) Finally, and Most Importantly • • • • • AuScope is already committed to: Assisting geological surveys in helping to establish the Earth Science Information Network Deploying Mineral Occurrence services and other priority data types Continuing development of the open source solutions Helping other domains get started • YOU ARE NOT ALONE AuScope 2007-2011 AN ORGANISATION FOR A NATIONAL EARTH SCIENCE INFRASTRUCTURE PROGRAM cmp CSIRO Component Model Internal Systems Direction of associations represents flow of data. Database Serv er JEE Application Serv er External Systems «database» Oracle Data Access Layer «Anything» Client Applications «data gateway» ArcSDE Vic. Govt. ITS Business Layer DMZ Presentation Layer W3C Web Serv ices «Anything» Client Applications CGI-GeoSciML Vocabularies. Source of GeoSciML data. OGC Web Feature Serv ices Source of Mineral Occurrence data.