= !MapGuide Architecture = ---- '''Revision History''' ||'''Revision'''||'''Date'''||'''Author'''||'''Comment'''|| ||1.0||October 31, 2008||Bruce Dechant||Initial public revision|| ||1.0||November 4, 2008||Bruce Dechant||Updated various sections|| [[PageOutline(2-4,Table of Contents,inline)]] == Overview == This document describes the !MapGuide architecture. The !MapGuide server is based on the ACE (ADAPTIVE Communications Environment) framework. == Related Documents == ||'''Document'''||'''Link'''|| ||ACE (ADAPTIVE Communication Environment)||http://www.cs.wustl.edu/~schmidt/ACE.html|| ||AGG (Anti-Grain Geometry)||http://www.antigrain.com/|| ||Oracle Berkeley DB XML||http://www.oracle.com/technology/products/berkeley-db/index.html|| == Terms and Definitions == ||'''Term'''||'''Definition'''|| ||ACE||ADAPTIVE Communication Environment|| ||AGG||Anti-Grain Geometry|| ||API||Application Programming Interface|| ||Data connection||A connection between the server and underlying data stores.|| ||DTD||XML Document Type Definition|| ||FDO||Feature Data Objects|| ||FDO connection||A connection between the server and underlying FDO data store.|| ||FIFO||First In First Out|| ||HTTP||Hypertext Transfer Protocol|| ||LDAP||Lightweight Directory Access Protocol|| ||RDBMS||Relational Database Management System|| ||SMP||Symmetric Multiprocessing|| ||SQL||Structured Query Language|| ||TCP/IP||Transmission Control Protocol over Internet Protocol|| ||XML||eXtensible Markup Language|| ||XMLDB||Native XML Database || ||XPath||XML Path Language|| ||XQuery||XML Query Language|| ||XSD||XML Schema Definition|| == High Level View == The following diagram shows the MapGuide web-based platform 3-tier architecture.[[BR]][[BR]] [[Image(image1.jpg)]] === Client Tier View === ==== AJAX VIEWER ==== The AJAX Viewer is a pure DHTML viewer based on AJAX technology that does not require any downloadable plug-ins. This viewer works in all major browsers on Windows, Mac, and Linux. ==== DWF VIEWER ==== The DWF Viewer embeds the downloadable Autodesk DWF Viewer which is based on a Microsoft ActiveX Control with full support for the Autodesk DWF format. This viewer works in Microsoft Internet Explorer only. ==== FUSION VIEWER ==== Built primarily in !JavaScript, Fusion is a web mapping application development framework. Fusion allows web designers and developers to build rich mapping applications quickly and easily. Using “widgets” that provide the interface functionality within Fusion’s modular architecture, developers are able to add, remove, or modify functionality using standard-compliant HTML and CSS. Fusion requires no proprietary browser plug-ins, and it produces applications that work in all major browsers on Windows, Mac, and Linux. Fusion provides a flexible means of interacting with !MapGuide Open Source. Using a growing suite of widgets, this modular-based system allows you to build powerful, interactive AJAX applications quickly with minimal programming experience. For applications requiring special functionality, Fusion provides an extensible platform that allows you to develop your own widgets. ==== MAESTRO ==== TBD ==== SITE ADMINISTRATOR ==== The !MapGuide Site Administrator is an application for managing your site and its servers. This application uses a web-based interface that you can access from any web browser. To start the program, open a browser and enter: http://servername:port/mapguide/mapadmin/login.php, using the name of the site server and port that you specified during installation. You use the !MapGuide Site Administrator to add and remove servers, take servers offline for maintenance, modify the configuration of a server, assign services to the servers, and monitor the status of any server. The !MapGuide Site Administrator is not a separate product component, but it is installed as a part of the !MapGuide Web Server Extensions. === Web Tier View === TBD === Server Tier View === TBD === Interaction Model === The following diagram shows the interaction between the various tiers.[[BR]][[BR]] [[Image(image5.jpg)]] The following diagram shows the interaction between servers.[[BR]][[BR]] [[Image(image6.jpg)]] == Server Component Architecture == [[Image(image2.jpg)]] TBD == Web Tier Component Architecture == [[Image(image3.jpg)]] TBD == Configuration Settings == == TBD ==