Changes between Initial Version and Version 1 of MapGuideRfc162


Ignore:
Timestamp:
Jul 11, 2017, 9:35:15 AM (7 years ago)
Author:
jng
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • MapGuideRfc162

    v1 v1  
     1= !MapGuide RFC 162 - Enhanced coordinate system capabilities in mapagent =
     2
     3This page contains a change request (RFC) for the !MapGuide Open Source project. 
     4More !MapGuide RFCs can be found on the [wiki:MapGuideRfcs RFCs] page.
     5
     6
     7== Status ==
     8 
     9||RFC Template Version||(1.0)||
     10||Submission Date||12 July 2017||
     11||Last Modified||12 July 2017||
     12||Author||Jackie Ng||
     13||RFC Status||draft||
     14||Implementation Status||not started||
     15||Proposed Milestone||||
     16||Assigned PSC guide(s)||||
     17||'''Voting History'''||||
     18||+1||||
     19||+0||||
     20||-0||||
     21||-1||||
     22||Abstained||||
     23 
     24== Overview ==
     25
     26This RFC proposes to enhance the coordinate system capabilities of the mapagent
     27
     28== Motivation ==
     29
     30MapGuide has one of the most powerful coordinate system transformation libraries (CS-Map) with support for several thousand different coordinate systems out of the box.
     31
     32Yet, as a MapGuide HTTP client application none of these transformation capabilities are ever exposed to the mapagent. To tap into coordinate transformation requires using the MapGuide Web API and thus custom server-side code that a HTTP client application would have to call into.
     33
     34== Proposed Solution ==
     35
     36This RFC will add the following enhancements to the mapagent
     37
     38=== Batch Coordinate Transformation ===
     39
     40We'll add a new mapagent operation for batch transformation of coordinates from one coordinate system to another
     41
     42|| '''Name''' || '''Value'''  || '''Required''' || '''Description''' ||
     43|| OPERATION || CS.TRANSFORMCOORDINATES || Yes || Operation to execute ||
     44|| VERSION || 3.3.0 || Yes || Operation version ||
     45|| CLIENTAGENT || text || Optional || Descriptive text for client ||
     46|| COORDINATESYSTEM || string || Yes || The CS-Map code describing the coordinate system of the input coordinates ||
     47|| TRANSFORMTO || string || Yes || The CS-Map code of the coordinate system to transform the input coordinates to ||
     48|| FORMAT || string || Yes || {{{text/xml}}} for XML, {{{application/json}}} for JSON ||
     49|| CLEAN || 1/0 || Optional || If requested format is {{{application/json}}}, returns a clean JSON structure per [wiki:MapGuideRfc158] ||
     50
     51The response matches the new {{{CoordinateList-3.3.0.xsd}}} schema
     52
     53{{{
     54TBD
     55}}}
     56
     57=== Transformation support for any mapagent operation that returns geometry ===
     58
     59Any operation that returns geometry data will now have an optional {{{TRANSFORMTO}}} parameter, which if set (to an appropriate Mentor CS code) will instruct the supporting operation to transform the geometry result to the specified coordinate system.
     60
     61The following operations will have a new {{{3.3.0}}} version that supports the optional {{{TRANSFORMTO}}} parameter:
     62
     63 * {{{SELECTFEATURES}}}
     64 * {{{SELECTAGGREGATES}}} (if a geometric aggregate expression is found. eg. {{{SpatialExtents}}})
     65
     66== Implications ==
     67
     68These are new API additions
     69
     70== Test Plan ==
     71
     72
     73
     74== Funding/Resources ==
     75
     76Community
     77