|
RelationToMarineMap
Purpose of happy-kml-tool in relation to MarineMap and primary data sources
BackgroundThe MarineMap Decision Support Tool relies on data from a variety of primary sources. Many of these primary sources such as the Multipurpose Marine Cadastre and West Coast Atlas Network provide data as web services in open formats, but these cannot be directly consumed by MarineMap for several important reasons:
Historically the MarineMap Consortium has gathered, preprocessed, styled, and published KML data layers based on primary sources largely by hand. This manual process requires careful coordination and a large variety of desktop tools. As MarineMap's use expands this approach is unlikely to scale effectively. We've also found that KML generation tools can be limited when handling large, complex datasets often used in decision making. From our past experience we believe that better tools can be developed. What we propose is a hosted web application that encompasses and streamlines the entire workflow required to take data from a variety of different platforms with primary data, and make it useful within MarineMap. MarineMap's cartographer and partners will be able to login and define cartographic stylesheets for each data layer. These stylesheets will identify data sources, any pre-processing steps to perform on the data, and all cartographic styling. This hosted application will then be responsible for generating from this information a final KML layer. These layers will be distributed on a content delivery network for fast access by thousands of users, and can be utilized directly by MarineMap or any other KML client like Google Maps and Earth. This tool will also be responsible for detecting data updates in primary sources, and will automatically regenerate KML layers when appropriate. ComponentsThis system can likely be broken down into two separate components, an open-source KML generation tool and it's hosted, web-based interface. The KML generation tool (happy-kml-tool) handles the pre-processing and styling of data into KML outputs based on a custom stylesheet language. It can be downloaded and run on a desktop computer by anyone, and would represent a significant contribution to the open source geospatial community. happy-kml-tool's hosted, web application counterpart would only be available to the MarineMap consortium and it's partners, and would allow us to collaborate with primary data providers directly and automate even more of the layer publishing workflow. KML Cartographic Workflow (happy-kml-tool)happy-kml-tool streamlines the KML generation process. Unlike many existing KML tools that repurpose existing 2d cartography tools, it's designed from the ground up for the KML format and provides the following features:
More technical documentation on a preliminary design can be found here and here Hosted Web Applicationhappy-kml-tool provides a set of core tools needed to efficiently define the cartography of KML layers, but must be installed and setup on a local computer. The hosted version of the tool would be made available to the MarineMap Consortium and partners to use happy-kml-tool's features entirely through a web-based interface. In addition, the hosted version of happy-kml-tool would:
Development PhasesPhase 1 - PilotThe pilot phase of this project involves getting the desktop version of happy-kml-tool bootstrapped. At the end of it's first milestone, it would be capable of:
Work items for this phase can be found here Phase 2 - Expanded Data Sources, Styling Options, and Hosted AppThis phase would add additional data sources support to happy-kml-tool, such as WMS, WFS and the ESRI REST API. The tool would also gain more advanced styling capabilities. This phase would introduce the hosted version of happy-kml-tool for partners to collaboratively develop KML layers. The hosted version would allow users to:
Work items for this phase can be found here Phase 3 - Data Optimization and Regionation SupportThis phase would introduce tools to help optimize complex KML layers. These tools would improve performance when downloading these layers as well as improve client performance when rendering. It should be stressed that without these features, the work from previous milestones is likely to be of limited utility since most data used in CMSP would be considered "complex". Using the products of this phase, users can:
Work items for this phase can be found here |