Presentation is loading. Please wait.

Presentation is loading. Please wait.

Common Map Widget API DCGS Teams’ Week April, 2014

Similar presentations


Presentation on theme: "Common Map Widget API DCGS Teams’ Week April, 2014"— Presentation transcript:

1 Common Map Widget API DCGS Teams’ Week April, 2014
UNCLASSIFIED Common Map Widget API DCGS Teams’ Week April, 2014 UNCLASSIFIED

2 Agenda Background The API Current Status Sample of Who’s Using It
JC2CUI Example How to Engage

3 Common Map Widget API (CMAPI)
Background Common Map Widget API (CMAPI) What is it? Specification for interwidget communication Enables Map widgets and data widgets from different programs to interoperate Where did it come from? GCCS-I3, JC2CUI, DCGS-IC widget interoperability problem at CENTCOM Expanded to many programs since How does it evolve? Bi-weekly TC meeting 175 member mailing list Coordination with OWF How is it governed Operating as Open Source project shepherded by DI2E Framework

4 Background: Why Do I Care?
Cross-vendor interoperability Widgets from different vendors can interoperate with any map widget “out of the box” Specialization Only a few vendors specialize on map widgets Every one else specialize on data widgets Competition Can replace one vendor’s map widget with a different one from another vendor Agility Widgets built for one use can be quickly incorporated into new workflows “on the fly” Compose-able capabilities

5 The API: Basic Approach
Identify basic map operations Abstract operations away from any physical map Define channels and messages, and associate with basic map operations (i.e., the API) Any widget can subscribe to map channels and react appropriately not just a map Don’t tie API to any particular implementation or map renderer e.g. Google Earth, OpenLayers

6 The API: Architecture View
GCCS-I3 Map Widget Search Widget (from DCGS-IC) OpenLayers Library JavaScript Translation Code Analysis Widget (from Army) JC2CUI Map Widget Google Earth Library JavaScript Translation Code SA Widget (from JC2CUI) Intel Widget (from GCCS-I3) Army Map Widget Google Map Library JavaScript Translation Code Map Library-Unique APIs (e.g., OpenLayers, GoogleMaps, Proprietary, etc) Common Map Widget API – enables widgets from different programs to interoperate with map widgets from different programs All of these widgets can interoperate with any (or all) of the map widgets on the left, due to all implementing a common API (the CMAPI)

7 The API: Summary View Overlays Features Status Errors Drag And Drop
map.view.zoom map.view.center.overlay map.view.center.feature map.view.center.location map.view.center.bounds map.view.clicked Status map.status.request map.status.view map.status.format map.status.about Errors map.error Overlays map.overlay.create map.overlay.remove map.overlay.hide map.overlay.show map.overlay.update Features map.feature.plot map.feature.plot.url map.feature.unplot map.feature.hide map.feature.show map.feature.selected map.feature.update Drag And Drop Will expand these in next few slides

8 The API: Actual Text

9 The API: Actual Text

10 The API: in code Load kml feature data onto map
widgetEventingController.publish('map.feature.plot.url', '{ "featureId": “SAGE_PUBLIC", "url": " }'); Center Map on Location (pan) widgetEventingController.publish('map.view.center.location', '{ "location": {"lat": , "lon": }

11 V1.2.0 available (www.cmapi.org) V1.2.1 in process
Current Status V1.2.0 available ( V1.2.1 in process Expect completion mid-Summer Focusing on user manipulation extensions Exploring handing off governance to Open Geospatial Consortium Working with GMU for non-OWF widgets (e.g., HTML5) GMU will be at Plugfest

12 Sample of Who’s Using It
Joint Command and Control Common User Interface (JC2CUI) Global Command and Control System – Integrated Imagery and Intelligence (GCCS-I3) Distributed Common Ground System Army (DCGS-A) Intelligence Community (DCGS-IC) Defense Intelligence Information Enterprise (DI2E) Framework Army Tactical Mission Command NSA (Red Bridge) NGA (Integrated Analytic Environment (IAE), Geospatial Visualization Services (GVS), others) CIA (Geospatial Tools Program) Navy C2RPC (PEO-C4I/PMW-150) AOC-WS US Coast Guard Adopted by OWF GOSS as OWF related project

13 JC2 CUI Example Publish map.feature.plot message
Publish map.feature.selected message Receive message. Center on selected track Receive message. Plot tracks on map Receive message. Center on selected track Receive message. Plot tracks on map Receive message. Center on selected track Receive message. Center on selected track Receive message. Center on selected track Receive message. Plot tracks on map Receive message. Scroll to selected track Publish map.feature.selected message Receive message. Show tracks in grid

14 How To Engage Implement the API in your widgets Join the group
Where widgets need to display on a map, or if you have a map widget Join the group Re-use existing products Map widgets: Extensible Mapping Platform (EMP) JC2CUI Others CMAPI JavaScript library CMAPI test widgets Go to to access

15 Backups

16 How It Came About A Common Pattern The Vision The Problem The Solution
Widgets query for or manipulate data Map widget displays results The Vision Mix and match query widgets and map widgets from different programs E.g., plug and play widgets from DCGS-IC, GCCS-I3, JC2CUI at CENTCOM The Problem Map widgets are tightly coupled to query widgets Interwidget comms (channels) unique to each program The Solution Common Map Widget API

17 Benefits of CMAPI Cross-vendor interoperability Specialization
Widgets from different vendors can interoperate with any map widget “out of the box” Specialization Only a few vendors specialize on map widgets Every one else specialize on data widgets Competition Can replace one vendor’s map widget with a different one from another vendor Agility Widgets built for one use can be quickly incorporated into new workflows “on the fly” Compose-able capabilities

18 Problem Statement Widget-based applications often require a map widget
Interwidget APIs used to “connect” data widgets to map widget are proprietary Abstractions for map renderer APIs (e.g., mapstraction) are for use within a widget, and not across widgets Need a vendor-agnostic API to enable interwidget communications between any vendor’s data widget … and any other vendor’s map widget

19 Search & Select sources
CMAPI Use Case Browser Disease distribution iFrame iFrame iFrame Search & Select sources Select water sources Analyze and combine Resource allocations Doctor Reports iFrame Map = Not OGC = CMAPI = OGC CSW WFS WMS KML KML ESRI Catalog MapInfo Inter-Graph OpenMap Auto-Desk

20 Background: OWF Widgets: web pages or apps contained in an iframe, often used to provide views of dynamic content Ozone: combination layout manager and messaging mechanism for hosting widgets within a Web browser. Resembles iGoogle, Uses Shindig - open source Google gadget (widget) container. Because browsers don't permit communication between iframes from different domains, Ozone also provides cross-domain-compatible pub-sub mechanism. Enables development of Web apps composed of multiple intercommunicating widgets. OWF = Ozone Widget Framework: in wide use across DoD/IC programs

21 Cross-program interoperability
Benefits Cross-program interoperability Widgets from different programs can interoperate with any map widget “out of the box” Specialization Only a few programs build map widgets Every one else focuses on data widgets Competition Can replace a map widget with a better one


Download ppt "Common Map Widget API DCGS Teams’ Week April, 2014"

Similar presentations


Ads by Google