Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

오픈소스GIS를 활용한 서버기반 공간분석과 시각화

6,434 views

Published on

오픈소스GIS인 GeoTools, GeoServer 및 OGC WPS 표준 기반의 공간분석과 시각화 구현 소개

Published in: Technology
  • Be the first to comment

오픈소스GIS를 활용한 서버기반 공간분석과 시각화

  1. 1. www.mangosystem.com Mango System inc. 이민파 (mapplus@gmail.com) 2017년 01월 12일
  2. 2. www.mangosystem.com 공간정보분석과 시각화 오픈소스GIS와 OGC표준 - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다. 오픈소스 기반 GIS R&D 사례1: 국토환경성평가지도 서비스 사례2: 통합적 역학조사 분석시스템 사례3: Web Processing Service 데모 데모 프로그램 설치 Advanced Web Processing Service
  3. 3. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  4. 4. www.mangosystem.com
  5. 5. www.mangosystem.com Desktop Server + Web R Python Java C++
  6. 6. www.mangosystem.com 대상 레이어Text Geocoding Visualization Processing Processing Visualization 참조 레이어 Visualization 1 2 3 4 시각화 Map
  7. 7. www.mangosystem.com Symbolization LinePoint Polygon Simple Graduated Symbol Graduated Color Equal Interval Natural Breaks Quantile Standard Deviation Unique Values Classification User Defined Color Brewer Flow Map Point - type Line - pattern Polygon - pattern Label - buffer, shadow… Chart Symbol Feature Type Raster
  8. 8. www.mangosystem.com Vector Analysis LinePoint Polygon Buffer WindRose Maps Multiple Ring Buffer Hexagon Polar Grids CalculationMinimum Bounding Geometry Circle XY Length Area Expression … Dissolve Feature Type Fishnet Network Analysis Shortest Path Service Area … Ring Maps Grids Envelope Circle Convex Hull …Aggregation Thiessen Polygon Delaunay Trangulation
  9. 9. www.mangosystem.com Spatial Statistics Analysis Autocorrelation Clustering Distribution LinePoint Polygon Central Feature Standard Deviational Ellipse Standard Distance Mean Center Median CenterLinear Directional Mean G-Statistics Moran’s I Spatial LQ K-Means Patterns - Global G-Statistics Moran’s I Spatio-Temporal Clustering Nearest Neighbor K-function Knox Statistics Spatial Scan Statistics Feature Type
  10. 10. www.mangosystem.com Raster Analysis LinePoint Polygon Density DistanceInterpolationHeatMap IDW Spline Kriging … Point Kernel Line Raster Surface Slope Aspect Hillshade Contour … Feature Type Hydro ….. Distance Direction Allocation
  11. 11. www.mangosystem.com Vector Analysis Point Line Point Point Point Polygon Point Statistics Overlay Line Polygon Polygon Polygon Spider Map Line Statistics Areal Interpolation Dasymetric Mapping Count Sum Mean Min Max Std. Dev. Var … Sum Length Union Intersect Symmetrical Difference Identity Erase Clip … Distance Calculation Attribute Distance Feature Type
  12. 12. www.mangosystem.com Raster Analysis Line Raster Point Raster Polygon Raster Value Extraction Overlay Zonal Statistics Raster Raster Feature Type Sum Mean Min Max Std. Dev. Var … Calculation Modeling
  13. 13. www.mangosystem.com
  14. 14. www.mangosystem.com
  15. 15. www.mangosystem.com
  16. 16. www.mangosystem.com 출처: http://www.onspatial.com/2011/04/cartographyflow-map-renderer.html
  17. 17. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  18. 18. www.mangosystem.com
  19. 19. www.mangosystem.com OGC 표준 기반, GIS사업 발주시 기본 요구사항
  20. 20. www.mangosystem.com WMS + TMS WFS WPS WCS ???
  21. 21. www.mangosystem.com
  22. 22. www.mangosystem.com 도시내부 건물 노후불량률 분석 예
  23. 23. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  24. 24. www.mangosystem.com 라이브러리 서비스 서버 패키지 툴박스 데스크톱 플러그인 Java + JTS + JAI + Apache + … Eclipse RCPSpring Framework + Wicket UI ① GeoTools Spatial Analysis Libraries ② GeoServer WPS Extension ③ uDig Desktop Processing Toolbox Plugin uDig Desktop
  25. 25. www.mangosystem.com LibrariesServer GIS Desktop GIS GeoTools OpenMap GeoServer JTS Topology Suite (Geometry Engine) JUMP and … uDig deegree gvSIG GeoAPI OGC Standards GEOS: C NTS: .NET JSTS: JS World Wind shapely: Python
  26. 26. www.mangosystem.com • Member(17), Commit(350), Fork(23) • https://github.com/mapplus/spatial_statistics_for_geotools_udig • 언어지원(3), 번역자(7), 문자열(1,428) • https://www.transifex.com/mangosystem/ss-rd/dashboard • https://sourceforge.net/projects/mango-spatialstatistics • http://www.mangosystem.com:8080/s2toolbox_updates
  27. 27. www.mangosystem.com StorageStyler Transformation I18n Resources Vector Operation Raster Operation Spatial Statistics Operation ProcessFactory & Process Process Parameter IO Repository I18n Resources Graph & Utilities Widget & Dialog Procesing Toolbox    ④ Scripting & Modeler
  28. 28. www.mangosystem.com 구분 대분류 중분류 현황 비고 GeoTools Descriptive Statistics Descriptive 5 공간통계 분석기법 및 시각화 Distributions 6 Density 1 Spatial Pattern Analysis Point Pattern Analysis 4 Global Spatial Auto-correlation 9 Local Spatial Auto-correlation 9 Spatial Clustering AMOEBA 1 Spatial Modeling Spatial Multivariate 1 Spatial Interpolation Deterministic 2 Graphic Visualization Graph & Visualization 7 Vector GeoProcessing Spatial Weight Matrix 1 Spatial Unit Creation 9 벡터 분석 및 처리 Calculation 7 Aggregation 8 Conversion 3 Proximity 5 Overlay 6 Extract 6 Generalization 5 Feature Tools 21 Raster GeoProcessing Conversion 5 래스터 분석 및 처리 (2017년 중점) Density 1 Descriptive 2 Distance 1 Classification 2 Extraction 5 Zonal Statistics 1 Overlay & Math 3 Feature Transformation 28 + @ 실시간 분석 및 처리 GeoServer Proces Parameter IO Custom XML 10 + @ OGC WPS 지원Format 3 + @ uDig Widget Parameters 20 + @ 데스크톱 기반 위젯 및 그래프 지원 Internal Dialog 5 Tools Custom Tools 4 Graph Tools 5
  29. 29. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  30. 30. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Service Framework SpringMVC Database Access MyBatis Database Server PostgreSQL / PostGIS GIS Server OBJECT, XML Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML Object-Relational Mapping (ORM) JDBC : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  31. 31. www.mangosystem.com
  32. 32. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  33. 33. www.mangosystem.com
  34. 34. www.mangosystem.com 차량방문정보 차량번호 방문일자 농가번호 방문목적 … … 축산농가정보 위치(Point) 농가번호 사육두수 …. FMD 발생현황 위치(Point) 농가번호 발생일 … 월별 차량 방문정보 view 시도, 시군구, 읍면동 행정경계
  35. 35. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Service Framework SpringMVC Database Access MyBatis Database Server PostgreSQL / PostGIS GIS Server OBJECT, XML Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML Object-Relational Mapping (ORM) JDBC : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  36. 36. www.mangosystem.com
  37. 37. www.mangosystem.com
  38. 38. www.mangosystem.com
  39. 39. www.mangosystem.com
  40. 40. www.mangosystem.com
  41. 41. www.mangosystem.com
  42. 42. www.mangosystem.com
  43. 43. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  44. 44. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Database Server PostgreSQL / PostGIS GIS Server Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  45. 45. www.mangosystem.com
  46. 46. www.mangosystem.com
  47. 47. www.mangosystem.com
  48. 48. www.mangosystem.com
  49. 49. www.mangosystem.com
  50. 50. www.mangosystem.com
  51. 51. www.mangosystem.com
  52. 52. www.mangosystem.com
  53. 53. www.mangosystem.com
  54. 54. www.mangosystem.com
  55. 55. www.mangosystem.com
  56. 56. www.mangosystem.com
  57. 57. www.mangosystem.com
  58. 58. www.mangosystem.com
  59. 59. www.mangosystem.com
  60. 60. www.mangosystem.com
  61. 61. www.mangosystem.com Reference: JONG-KOOK PARK, 2014, Geospatial Analysis Research for Helicopter Rescue Optimal Planning System, Soongsil University https://gis.e-education.psu.edu/sites/default/files/capstone/Miller_Geog596A_20120926.pptx
  62. 62. www.mangosystem.com Data Variables Service Process SlopeLandCoverSoilType WCSWFSWFS Raster Conditional RasterToVector AOI IntersectIntersect Dissolve Output Minimum Area SelectCalculate AreaTo Singlepart 1 2 3 4 5 6 7 8 Obstructions Buffer WFS Difference
  63. 63. www.mangosystem.com
  64. 64. www.mangosystem.com
  65. 65. www.mangosystem.com
  66. 66. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  67. 67. www.mangosystem.com Oracle JRE 7 or OpenJDK 7 •GeoServer & Version •Java 8 - GeoServer 2.9.x and above •Java 7 - GeoServer 2.6.x to 2.8.x •Java 6 - GeoServer 2.3.x to 2.5.x •Java 5 - GeoServer 2.2.x and earlier Apache Tomcat 7 ~ 8 GeoServer 2.8.x Web Archive GeoServer WPS Extension OpenGDA Analysis Service Configuration PostgreSQL + PostGIS(2.x)
  68. 68. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Database Server PostgreSQL / PostGIS GIS Server Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  69. 69. www.mangosystem.com
  70. 70. www.mangosystem.com
  71. 71. www.mangosystem.com
  72. 72. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  73. 73. www.mangosystem.com
  74. 74. www.mangosystem.com
  75. 75. www.mangosystem.com
  76. 76. www.mangosystem.com WPS Parameter Data Inputs Process Outputs ComplexData ComplexOutput LiteralData BoundingBoxData LiteralOutput BoundingBoxOutput
  77. 77. www.mangosystem.com 1. Literal 2. BoundingBox 3. Complex Custom XML GridCoverage XML Binary Feature GML Zip-binary Native Type: byte, short, int, long, float, double, String…. Extent SLD Filter Encoding CData GeoJSON WKT …
  78. 78. www.mangosystem.com Category Data source Format Mime type Geometry & Feature Collection Custom Features WFS Shapefile Cad Dataset GML2.1 GML3.1 GML3.2 GeoJSON KML2.1 KML2.2 GeoRSS2.0 Simple GeoRSS2.0 GML Zip-shapefile Wkt Wkb text/xml; subtype=gml/2.1.2 text/xml; subtype=gml/3.1.1 text/xml; subtype=gml/3.2.1 application/json text/xml; subtype=kml/2.1 (vnd.google-earth.kml+xml) text/xml; subtype=kml/2.2 text/xml; subtype=rss_simple/2.0 (rss+xml) text/xml; subtype=rss_gml/2.0 application/zip application/wkt(geometry) application/wkb(geometry) Grid Coverage WCS GeoTiff image/tiff, image/geotiff SLD User XML text/xml; subtype=sld/1.0.0 text/xml; subtype=sld/1.1.0 Filter User XML text/xml; subtype=filter/1.1 XML User XML text/xml Literal User - -
  79. 79. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ……………………………………..> <ows:Identifier>statistics:KernelDensity</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://wps_server/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1"> <wfs:Query typeName=“cite:stations" srsName="EPSG:5181"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>sgg_cd</ogc:PropertyName> <ogc:Literal>27110</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </wfs:Query> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> <wps:Input> <ows:Identifier>searchRadius</ows:Identifier> <wps:Data> <wps:LiteralData>2500</wps:LiteralData> </wps:Data> </wps:Input> ………………………….. </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <wps:ResponseForm> <wps:RawDataOutput mimeType=“application/json"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=kml/2.2"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.2.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> Custom Type
  80. 80. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>geo:centroid</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>geom</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"> <gml:LineString srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:posList>-290.0 60.0 -240.0 150.0 20.0 130.0 100.0 90.0 180.0 60.0 260.0 -70.0</gml:posList> </gml:LineString> </wps:ComplexData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute>
  81. 81. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" .. xmlns:wfs="http://www.opengis.net/wfs" > <ows:Identifier>statistics:BufferFeatures</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1"> <wfs:Query typeName=“cite:subway" srsName="EPSG:5181" /> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> <wps:Input> <ows:Identifier>distance</ows:Identifier> <wps:Data> <wps:LiteralData>100</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> ex) wfs, wcs, gml, filter, sld … complex type
  82. 82. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>statistics:BufferFeatures</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://server/temp/api_data/areaFeatures.xml" method="GET" /> </wps:Input> <wps:Input> <ows:Identifier>distance</ows:Identifier> <wps:Data> <wps:LiteralData>100</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> ex) wps process result(asReference=true), external resource(dxf…)..
  83. 83. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ...> <ows:Identifier>ras:contour</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>data</ows:Identifier> <wps:Reference mimeType="image/tiff" xlink:href="http://geoserver/wcs" method="POST"> <wps:Body><![CDATA[<?xml version="1.0" encoding="UTF-8"?> <GetCoverage version="1.1.1" service="WCS" xmlns="http://www.opengis.net/wcs/1.1.1" ...> <ows:Identifier>cite:dem</ows:Identifier> <DomainSubset> <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::2096"> <ows:LowerCorner>249126.90643187007 366434.5230430386</ows:LowerCorner> <ows:UpperCorner>260621.90643187007 377144.5230430386</ows:UpperCorner> </ows:BoundingBox> </DomainSubset> <Output store="true" format="image/geotiff"> <GridCRS> <GridBaseCRS>urn:ogc:def:crs:EPSG::2096</GridBaseCRS> <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType> <GridOffsets>5.0 -5.0</GridOffsets> <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS> </GridCRS> </Output> </GetCoverage>]]></wps:Body> </wps:Reference> </wps:Input>
  84. 84. www.mangosystem.com <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="GML3" xmlns:foss="http://www.opengeospatial.net/foss"> <wfs:Query typeName="foss:sgg"> <wfs:PropertyName>gid</wfs:PropertyName> <wfs:PropertyName>geom</wfs:PropertyName> <wfs:PropertyName>pop_den</wfs:PropertyName> <ogc:Filter> <ogc:BBOX> <ogc:PropertyName>geom</ogc:PropertyName> <gml:Envelope srsName="http://www.opengis.net/gml/srs/epsg.xml#3857"> <gml:lowerCorner>14147434 4509613</gml:lowerCorner> <gml:upperCorner>14148345 4524017</gml:upperCorner> </gml:Envelope> </ogc:BBOX> </ogc:Filter> </wfs:Query> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input>
  85. 85. www.mangosystem.com <?xml version="1.0" encoding="UTF-8"?> <GetCoverage version="1.1.1" service="WCS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wcs/1.1.1" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xsi:schemaLocation="http://www.opengis.net/wcs/1.1.1 http://schemas.opengis.net/wcs/1.1.1/wcsAll.xsd"> <ows:Identifier>foss:seoul_dem30</ows:Identifier> <DomainSubset> <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::5181"> <ows:LowerCorner>179171.39881047895 436569.3290600816</ows:LowerCorner> <ows:UpperCorner>216221.0981287582 466869.08315843146</ows:UpperCorner> </ows:BoundingBox> </DomainSubset> <Output store=“false" format="image/tiff"> <GridCRS> <GridBaseCRS>urn:ogc:def:crs:EPSG::3857</GridBaseCRS> <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType> <GridOffsets>50.0 -50.0</GridOffsets> <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS> </GridCRS> </Output> </GetCoverage>
  86. 86. www.mangosystem.com 1. RawDataOutput 2. ResponseDocument Document + Result URL Status & ID asReference storeExecute Response Document + RawData GML, GeoJSON, GridCovearge… as raw data
  87. 87. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" …………………… </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> <?xml version="1.0" encoding="utf-8"?> <NearestNeighborIndex> <TypeName>apartment</TypeName> <Observed_Point_Count>4052</Observed_Point_Count> <Study_Area>1.047557075141607E9</Study_Area> <Observed_Mean_Distance>200.00446</Observed_Mean_Distance> <Expected_Mean_Distance>254.22844</Expected_Mean_Distance> <Nearest_Neighbor_Ratio>0.786712</Nearest_Neighbor_Ratio> <Z_Score>-25.973484</Z_Score> <P_Value>0.0</P_Value> <Standard_Error>2.087667</Standard_Error> </NearestNeighborIndex> Literal, BoundingBox, Complex(Custom XML 등) 등 요청 후 클라이언트에서 직접 사용하는 경우
  88. 88. www.mangosystem.com <?xml version="1.0" encoding="UTF-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>statistics:FeatureToPoint</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.0.0" outputFormat="GML2" xmlns:foss="http://www.opengeospatial.net/foss"> <wfs:Query typeName="foss:randomsgg"/> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="application/json"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute>
  89. 89. www.mangosystem.com <wps:Execute version="1.0.0" service="WPS" ............ </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <wps:ExecuteResponse service="WPS" version="1.0.0" ……….> ……… <wps:ProcessOutputs> <wps:Output> <ows:Identifier>result</ows:Identifier> <wps:Reference href="http://server/temp/gridcoverage/result_230_2123fds.tif" mimeType="image/tiff" /> </wps:Output> </wps:ProcessOutputs> </wps:ExecuteResponse>  asReference=true  한번 요청 후 클라이언트에서 재사용  Tiff와 같이 클라이언트에서 처리하기 어려운 포맷인 경우 서버에서 처리  대용량의 데이터인 경우
  90. 90. www.mangosystem.com <?xml version="1.0" encoding="UTF-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>statistics:WindRoseMap</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.0.0" outputFormat="GML2" xmlns:foss="http://www.opengeospatial.net/foss"> <wfs:Query typeName="foss:apartment"/> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:Output asReference="true" mimeType="application/json"> <ows:Identifier>anchor</ows:Identifier> </wps:Output> <wps:Output asReference="true" mimeType="application/json"> <ows:Identifier>windRose</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> Output이 여러 개인 경우
  91. 91. www.mangosystem.com <wps:Execute version="1.0.0" service="WPS" ............ </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse=“true"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <?xml version="1.0" encoding="utf-8"?> <wps:ExecuteResponse xml:lang="en" service="WPS" serviceInstance="http://localhost:8090/geoserver/ows?" statusLocation="http://localhost:8090/geoserver/ows?service=WPS&amp;version=1.0.0&amp;request=GetExecutionSta tus&amp;executionId=142e4b6c-44e1-4aba-b8a2-6da8f0793198" version="1.0.0" ……..> <wps:Process wps:processVersion="1.0.0"> <ows:Identifier>statistics:KernelDensity</ows:Identifier> ……….. </wps:Process> <wps:Status creationTime="2016-01-08T05:41:45.198Z"> <wps:ProcessAccepted>Process accepted.</wps:ProcessAccepted> </wps:Status> </wps:ExecuteResponse> http://server/ows?service=WPS&version=1.0.0&request=GetExecutionResult&executionId=142e4b6c-44e1-4aba-b8a2- 6da8f0793198&outputId=result.tiff&mimetype=image%2Ftiff storeExecuteResponse=true
  92. 92. www.mangosystem.com

×