Towards a Web Service for Geographic and Multidimensional Processing Joel da Silva Valéria Cesário Times Robson Fidalgo Roberto Barros {js,vct,rdnf,roberto}@cin.ufpe.br Center for Informatics Federal University of Pernambuco (Cin/UFPE) 1 - 19 Presentation Contents Introduction Related Work Web Services Architecture The Architecture of the XML For Analysis (XMLA) and Web Feature Service (WFS) Mapping the correspondences between the WFS and XMLA services GMLA Request Schema ISAG Model GMLA Web Service Conclusions 2 - 19 Introduction Web Services UDDI SOAP SVG XML JAVA XML Schema JMI XPath XLink XPointer GIS Filter Encoding GOLAPA OLAP GMLA Request GAM Schema ISAG GeoMD WFS GetCapabilities Slice/Dice XMLA MOF Overlaps Contains Java Servlet CWM OMG 3 - 19 Related Work A lot of research has been developed for integrating analytic and geographic processing; The main goal is to provide an environment for geographic and multidimensional processing; However, this integration may not be fully achieved yet or may be built by using proprietary technologies; 4 - 19 GOLAPA (Geographical On-Line Analytical Processing Architecture ) Data, Services and Graphic User Interface Support to operational data ..........and building of the ........Geographic Data Warehouse 5 - 19 Geography Markup Language for Analysis GMLA Schema XMLA GML 6 - 19 Web Services Architecture Distributed computational architecture based on auto descriptive services; Web Services are based on the XML Technology and can be published, located and executed over the Web; The WS Architecture have four basic standards: 1 – XML – eXtensible Markup Language 2 – SOAP – Simple Object Application Protocol 3 – UDDI – Universal Description, Discover and Integration 4 – WSDL – Web Services Description Language 7 - 19 8 - 19 The XML For Analysis Service XML For Analysis (XMLA) is based on the Web Services and XML Technologies to enable the OLAP processing over the Web; XMLA was created by an initiative of the Microsoft and Hyperion to provide an open access for multidimensional databases; This standardized access enables a non-proprietary communication between client applications and OLAP data servers through the Internet 9 - 19 Web Feature Service (WFS) Architecture The WFS is a OGC Specification that provides some interfaces for the description of operations used to manipulate geographic features over the Web; The geographic features are spatial objects that must at least contain one geometric property and may have one or more descriptive properties; The geographic features are coded in Geographic Markup Language; 10 - 19 Mapping of the WFS and XMLA Specifications Correspondences 11 - 19 GMLA Request Schema New Elements MD: Multidimensional Request GEO: Geographical Request XMLA New Elements WFS / Filter Encoding GEOMD: Geographical Multidimensional Request - New Element Mapping or Integration 12 - 19 A Model for the Integration of Analitycal and Geographical Services (ISAG) Verify Request Type Receive Request [ Error ] Extract Parameters( Request Type ) Extract Request Parameters Validate Parameters( Request Type ) [ Validation Error ] Validate Request Parameters Throw Exception [ Validated Parameters ] [ Request Type = GEO ] [ Request Type = MD ] [ Request Type = GEOMD ] [ Mapping GEOMD ] Build GEO Request Query GEO Service Request MD Service [ Integration GEOMD ] [ Integration GEOMD ] Query Metadata Integrate Results [ Request Type = GEOMD ] [ Connection Error ] [ Initialization Error ] [ Request Type = MD ] Send Response [ Mapping GEOMD ] Map Results [ Request Type = GEO ] [ Connection Error ] 13 - 19 GMLA Web Service Architecture 14 - 19 Example of a Integration GEOMD Request <GmlaRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="D:\GMLARequest.xsd"> <GEOMD> <GEOMDSchema>GOLAPAGMDM001</GEOMDSchema> <MD> <XMLAServiceAddress>http://localhost/xmla/msxisapi.dll</XMLAServiceAddress> <XMLAMethod>Execute</XMLAMethod> <OLAPCube>Sales</OLAPCube> <Command> <Statement> SELECT NON EMPTY(DRILLDOWNLEVEL([Store].[Store Country].members)) ON COLUMNS,NON EMPTY([Product].[Product Family].members) ON ROWS FROM Sales </Statement> </Command> <Properties> <PropertyList> <DataSourceInfo>Provider=MSOLAP;Data Source=local </DataSourceInfo> <Catalog>Foodmart 2000</Catalog> <Format>Multidimensional</Format> <AxisFormat>TupleFormat</AxisFormat> </PropertyList> </Properties> </MD> Multidimensional Expression: List the totals of product sales, classifying the result by product category and by state and country where the sales were made ... 15 - 19 Example of a Integration GEOMD Request (Continuation) ... <GEO> <WFSServiceAddress>http://localhost:8080/deegreewfs/deegreewfs</WFSServiceAddress> <GeoDB>UsaGeoDB</GeoDB> <GeoSpace>USAGeoSpace</GeoSpace> <GeoView>USAGeoView</GeoView> <GetFeature> <wfs:GetFeature outputFormat="GML2" xmlns:gml="http://www.opengis.net/gml" xmlns:wfs="http://www.opengis.net/wfs" xmlns:ogc="http://www.opengis.net/ogc"> <wfs:Query typeName="Country"> </wfs:Query> <wfs:Query typeName="States"> <ogc:Filter> <ogc:BBOX> <wfs:PropertyName>/States/Border</wfs:PropertyName> <gml:Box> <gml:coord> <gml:X>-124.73276978</gml:X> <gml:Y>48.99993133</gml:Y> </gml:coord> <gml:coord> <gml:X>-117.2084</gml:X> <gml:Y>43.0081</gml:Y> </gml:coord> </gml:Box> </ogc:BBOX> </ogc:Filter> </wfs:Query> </wfs:GetFeature> </GetFeature> </GEO> </GEOMD> </GmlaRequest> Definition of the Feature Type (Themes) that will be present in the request Filter Expression with the BBOX Spatial Operator 16 - 19 Graphic Visualization of a Integration GEOMD Request Features that satisfy the BBOX spatial operator 17 - 19 Conclusions The integration between analytic and geographic processing as a single tool provides a wider context for decision support; Only open and extensible technologies have been used in the specification and implementation of the integration model; The layer II of GOLAPA Architecture has been implemented; The presented solutions may be used by some other work that aim to integrate GIS and OLAP. 18 - 19 Main contributions Mapping between the WFS and XMLA services GMLA Request Schema ISAG Model GMLA Web Service Graphic User Interface Prototype 19 - 19 20 - 19