Changes between Version 10 and Version 11 of MapGuideRfc53


Ignore:
Timestamp:
08/11/08 14:09:18 (16 years ago)
Author:
stevedang
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • MapGuideRfc53

    v10 v11  
    1 = !MapGuide RFC 53 - !GetSchemas, !GetClasses and !DescribeSchema API Enhancements =
     1= !MapGuide RFC 53 - !DescribeSchema, !GetSchemas and !GetClasses API Enhancements =
    22
    33This page contains a change request (RFC) for the !MapGuide Open Source project. 
     
    2525== Overview ==
    2626
    27 This RFC enhances MapGuide Feature Service to take performance advantage of the new FDO APIs as described in FDO RFC 23, http://trac.osgeo.org/fdo/wiki/FDORfc23 .
     27This RFC enhances !MapGuide Feature Service to take performance advantage of the new FDO APIs as described in FDO RFC 23, http://trac.osgeo.org/fdo/wiki/FDORfc23 .
    2828
    29 The mainly affected MapGuide Feature Service APIs include DescribeSchema, GetSchemas, and GetClasses.
     29The mainly affected !MapGuide Feature Service APIs include !DescribeSchema, !GetSchemas, and !GetClasses.
    3030
    3131== Motivation ==
    3232
    33 MapGuide Feature Service APIs provide the ability to configure a connection to a supported FDO provider, and to obtain available properties and geometries from a specific feature source. These requested data are retrieved via the FDO DescribeSchema API which returns detailed information about all feature classes available from a provider.
     33!MapGuide Feature Service APIs provide the ability to configure a connection to a supported FDO provider, and to obtain available properties and geometries from a specific feature source. These requested data are retrieved via the FDO !DescribeSchema API which returns detailed information about all feature classes available from a provider.
    3434
    35 Although MapGuide does cache the full schemas for high performance with subsequent requests, the initial DescribeSchema API call can take a very long time when a database contains a large number of feature classes (e.g. real-world Oracle database deployments).
     35Although !MapGuide does cache the full schemas for high performance with subsequent requests, the initial !DescribeSchema API call can take a very long time when a database contains a large number of feature classes (e.g. real-world Oracle database deployments).
    3636
    37 The proposal described in this RFC is to update all the relevant MapGuide Feature Service APIs so that they allow only the required subset of the available information to be requested, and avoid making calls to retrieve the full schema unless it is absolutely necessary.
     37The proposal described in this RFC is to update all the relevant !MapGuide Feature Service APIs so that they allow only the required subset of the available information to be requested, and avoid making calls to retrieve the full schema unless it is absolutely necessary.
    3838
    3939== Proposed Solution ==
    4040
    41 * Update the following existing MapGuide Feature Service APIs to utilize the new FDO APIs:
     41* Update the following existing !MapGuide Feature Service APIs to utilize the new FDO APIs:
    4242
    4343{{{
     
    4747}}}
    4848   
    49 * Add the following new MapGuide Feature Service APIs:
     49* Add the following new !MapGuide Feature Service APIs:
    5050
    5151{{{
     
    157157== Implications ==
    158158
    159  * Other related MapGuide Feature Service APIs (such as DescribeSchemaAsXml, GetClassDefinition, GetIdentityProperties, etc.) will be updated to utilize the new FDO APIs for improved performance.
    160  * The existing HTTP interface DESCRIBEFEATURESCHEMA will be updated to utilize the new DescribeSchemaAsXml API.
    161  * For providers that do not support the new FDO APIs, MapGuide will fall back on using DescribeSchema and walk through the results to retrieve the schema names, class names, and class definitions.
    162  * The MapGuide Feature Service cache framework will be modified to allow the schema information retrieved from the new APIs to be built up incrementally as required.
    163  * The old DescribeSchema and DescribeSchemaAsXml APIs will be deprecated in the future.
     159 * Other related !MapGuide Feature Service APIs (such as !DescribeSchemaAsXml, GetClassDefinition, GetIdentityProperties, etc.) will be updated to utilize the new FDO APIs for improved performance.
     160 * The existing HTTP interface DESCRIBEFEATURESCHEMA will be updated to utilize the new !DescribeSchemaAsXml API.
     161 * For providers that do not support the new FDO APIs, !MapGuide will fall back on using !DescribeSchema and walk through the results to retrieve the schema names, class names, and class definitions.
     162 * The !MapGuide Feature Service cache framework will be modified to allow the schema information retrieved from the new APIs to be built up incrementally as required.
     163 * The old !DescribeSchema and !DescribeSchemaAsXml APIs will be deprecated in the future.
    164164 
    165165== Test Plan ==
    166166
    167  * The old DescribeSchema and DescribeSchemaAsXml APIs should work as before.
     167 * The old !DescribeSchema and !DescribeSchemaAsXml APIs should work as before.
    168168 * Existing unit tests will be updated to utilize the new APIs and re-tested.
    169169