id,summary,reporter,owner,description,type,status,priority,milestone,component,version,severity,resolution,keywords,cc,external_id 2459,v2.6 QUERYMAPFEATURES may produce inconsistent results,jng,jng,"The v2.6 QUERYMAPFEATURES works like this: 1. Call MgRenderingService::QueryFeatures() with the given parameters (returns a MgFeatureInformation) 2. Call MgRenderingService::RenderDynamicOverlay() with the given parameters (if inline selection is requested) 3. Call MgRenderingService::QueryFeatureProperties() with the given parameters (if attributes is selected) All 3 components are then married up to form the final response. A click-based selection will issue QUERYMAPFEATURES with MAXFEATURES=1. For a map with more than 1 selectable layer (eg. Parcels, Trees), there may be cases where the following happens. 1. Call MgRenderingService::QueryFeatures() with the given parameters. Returns a MgSelection with Parcels selected. 2. Call MgRenderingService::RenderDynamicOverlay() with the given parameters. Returns an image of the selected parcel 3. Call MgRenderingService::QueryFeatureProperties() with the given parameters. Returns the attributes of the first selected '''Tree'''. Because MAXFEATURES=1, no attributes for Parcels are returned. The problem is when a click could select more than one layer, the attributes may be collected for the wrong layer, even if that layer has candidate matching features. When MAXFEATURES=1 and we requested LAYERNAMES=Trees,Parcels and a selection image/XML of Parcels is returned, at this point we only want to collect attributes from Parcels instead of '''Trees and Parcels'''. Basically when we have a MgFeatureInformation, we want to use the layer names within its MgSelection for collecting the matching attributes instead of using the layer names from the original request.",defect,new,low,2.6,Rendering Service,,trivial,,,,