<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.esri.com/schemas/ArcGIS/9.2" xmlns:e="http://www.esri.com/schemas/ArcGIS/9.2" xmlns="http://schemas.xmlsoap.org/wsdl/">
	<types>
		<xs:schema targetNamespace="http://www.esri.com/schemas/ArcGIS/9.2" xmlns="http://www.esri.com/schemas/ArcGIS/9.2">
			<xs:element name="GetDocumentInfo">
				<xs:complexType/>
			</xs:element>
			<xs:element name="GetDocumentInfoResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="PropertySet"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetMapCount">
				<xs:complexType/>
			</xs:element>
			<xs:element name="GetMapCountResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetMapName">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Index" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetMapNameResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetDefaultMapName">
				<xs:complexType/>
			</xs:element>
			<xs:element name="GetDefaultMapNameResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetServerInfo">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetServerInfoResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="MapServerInfo"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ExportMapImage">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapDescription" type="MapDescription"/>
						<xs:element name="ImageDescription" type="ImageDescription"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ExportMapImageResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="MapImage"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="Find">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapDescription" type="MapDescription"/>
						<xs:element name="MapImageDisplay" type="ImageDisplay"/>
						<xs:element name="SearchString" type="xs:string"/>
						<xs:element name="Contains" type="xs:boolean"/>
						<xs:element name="SearchFields" type="xs:string"/>
						<xs:element name="FindOption" type="esriFindOption"/>
						<xs:element name="LayerIDs" type="ArrayOfInt"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="FindResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="ArrayOfMapServerFindResult"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="Identify">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapDescription" type="MapDescription"/>
						<xs:element name="MapImageDisplay" type="ImageDisplay"/>
						<xs:element name="SearchShape" type="Geometry"/>
						<xs:element name="Tolerance" type="xs:int"/>
						<xs:element name="IdentifyOption" type="esriIdentifyOption"/>
						<xs:element name="LayerIDs" type="ArrayOfInt"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="IdentifyResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="ArrayOfMapServerIdentifyResult"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryFeatureCount">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
						<xs:element name="QueryFilter" type="QueryFilter"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryFeatureCountResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryFeatureIDs">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
						<xs:element name="QueryFilter" type="QueryFilter"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryFeatureIDsResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="FIDSet"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryFeatureData">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
						<xs:element name="QueryFilter" type="QueryFilter"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryFeatureDataResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="RecordSet"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryHyperlinks">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapDescription" type="MapDescription"/>
						<xs:element name="MapImageDisplay" type="ImageDisplay"/>
						<xs:element name="LayerIDs" type="ArrayOfInt"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="QueryHyperlinksResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="ArrayOfMapServerHyperlink"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ComputeScale">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapDescription" type="MapDescription"/>
						<xs:element name="MapImageDisplay" type="ImageDisplay"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ComputeScaleResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:double"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ComputeDistance">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="FromPoint" type="Point"/>
						<xs:element name="ToPoint" type="Point"/>
						<xs:element name="Units" type="esriUnits"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ComputeDistanceResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:double"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ToMapPoints">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapDescription" type="MapDescription"/>
						<xs:element name="MapImageDisplay" type="ImageDisplay"/>
						<xs:element name="ScreenXValues" type="ArrayOfInt"/>
						<xs:element name="ScreenYValues" type="ArrayOfInt"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ToMapPointsResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="Multipoint"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="FromMapPoints">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapDescription" type="MapDescription"/>
						<xs:element name="MapImageDisplay" type="ImageDisplay"/>
						<xs:element name="MapPoints" type="Multipoint"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="FromMapPointsResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="ScreenXValues" type="ArrayOfInt"/>
						<xs:element name="ScreenYValues" type="ArrayOfInt"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetLegendInfo">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerIDs" type="ArrayOfInt"/>
						<xs:element name="LegendPatch" type="MapServerLegendPatch"/>
						<xs:element name="ImageType" type="ImageType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetLegendInfoResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="ArrayOfMapServerLegendInfo"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetSQLSyntaxInfo">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetSQLSyntaxInfoResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="SQLSyntaxInfo"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetSupportedImageReturnTypes">
				<xs:complexType/>
			</xs:element>
			<xs:element name="GetSupportedImageReturnTypesResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="esriImageReturnType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="IsFixedScaleMap">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="IsFixedScaleMapResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:boolean"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HasSingleFusedMapCache">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HasSingleFusedMapCacheResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:boolean"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetTileCacheInfo">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetTileCacheInfoResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="TileCacheInfo"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetMapTile">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="Level" type="xs:int"/>
						<xs:element name="Row" type="xs:int"/>
						<xs:element name="Column" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetMapTileResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:base64Binary"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HasLayerCache">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HasLayerCacheResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:boolean"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetLayerTile">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
						<xs:element name="Level" type="xs:int"/>
						<xs:element name="Row" type="xs:int"/>
						<xs:element name="Column" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetLayerTileResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:base64Binary"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetVirtualCacheDirectory">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetVirtualCacheDirectoryResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
            <xs:element name="GetCacheName">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="MapName" type="xs:string"/>
						<xs:element name="LayerID" type="xs:int"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="GetCacheNameResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Result" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:complexType name="PropertySetProperty">
				<xs:sequence>
					<xs:element name="Key" type="xs:string"/>
					<xs:element name="Value" type="xs:anyType" nillable="true" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfPropertySetProperty">
				<xs:sequence>
					<xs:element name="PropertySetProperty" type="PropertySetProperty" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="PropertySet">
				<xs:sequence>
					<xs:element name="PropertyArray" type="ArrayOfPropertySetProperty"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfInt">
				<xs:sequence>
					<xs:element name="Int" type="xs:int" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:simpleType name="esriGeometryType">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriGeometryPoint" />
					<xs:enumeration value="esriGeometryMultipoint" />
					<xs:enumeration value="esriGeometryPolyline" />
					<xs:enumeration value="esriGeometryPolygon" />
					<xs:enumeration value="esriGeometryMultiPatch" />
				</xs:restriction>
			</xs:simpleType>
	    <xs:complexType name="SpatialReference" abstract="true">
		    <xs:sequence>
			    <xs:element name="WKT" type="xs:string" minOccurs="0"/>
			    <xs:element name="XOrigin" type="xs:double" minOccurs="0"/>
			    <xs:element name="YOrigin" type="xs:double" minOccurs="0"/>
			    <xs:element name="XYScale" type="xs:double" minOccurs="0"/>
			    <xs:element name="ZOrigin" type="xs:double" minOccurs="0"/>
			    <xs:element name="ZScale"  type="xs:double" minOccurs="0"/>
			    <xs:element name="MOrigin" type="xs:double" minOccurs="0"/>
			    <xs:element name="MScale"  type="xs:double" minOccurs="0"/>
          <xs:element name="XYTolerance" type="xs:double" minOccurs="0"/>
          <xs:element name="ZTolerance"  type="xs:double" minOccurs="0"/>
          <xs:element name="MTolerance"  type="xs:double" minOccurs="0"/>
          <xs:element name="HighPrecision" type="xs:boolean" minOccurs="0"/>
          <xs:element name="LeftLongitude" type="xs:double" minOccurs="0"/>
          <xs:element name="WKID" type="xs:int" minOccurs="0"/>
        </xs:sequence>
	    </xs:complexType>
			<xs:complexType name="ProjectedCoordinateSystem">
				<xs:complexContent>
					<xs:extension base="SpatialReference"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="GeographicCoordinateSystem">
				<xs:complexContent>
					<xs:extension base="SpatialReference"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="UnknownCoordinateSystem">
				<xs:complexContent>
					<xs:extension base="SpatialReference"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Geometry"/>
			<xs:complexType name="ArrayOfMapLayerInfo">
				<xs:sequence>
					<xs:element name="MapLayerInfo" type="MapLayerInfo" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerInfo">
				<xs:sequence>
					<xs:element name="Name" type="xs:string"/>
					<xs:element name="Description" type="xs:string"/>
					<xs:element name="FullExtent" type="Envelope" minOccurs="0"/>
					<xs:element name="Extent" type="Envelope" minOccurs="0"/>
					<xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
					<xs:element name="MapLayerInfos" type="ArrayOfMapLayerInfo" minOccurs="0"/>
					<xs:element name="BackgroundColor" type="Color" minOccurs="0"/>
					<xs:element name="Bookmarks" type="ArrayOfMapServerBookmark" minOccurs="0"/>
					<xs:element name="DefaultMapDescription" type="MapDescription" minOccurs="0"/>
					<xs:element name="Units" type="esriUnits"/>
					<xs:element name="SupportedImageReturnTypes" type="esriImageReturnType"/>
					<xs:element name="BackgroundSymbol" type="FillSymbol" minOccurs="0"/>
			    <xs:element name="CopyrightText" type="xs:string"/>					
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapLayerInfo">
				<xs:sequence>
					<xs:element name="LayerID" type="xs:int"/>
					<xs:element name="Name" type="xs:string"/>
					<xs:element name="Description" type="xs:string"/>
					<xs:element name="LayerType" type="xs:string"/>
					<xs:element name="SourceDescription" type="xs:string"/>
					<xs:element name="HasLabels" type="xs:boolean"/>
					<xs:element name="CanSelect" type="xs:boolean"/>
					<xs:element name="CanScaleSymbols" type="xs:boolean"/>
					<xs:element name="MinScale" type="xs:double"/>
					<xs:element name="MaxScale" type="xs:double"/>
					<xs:element name="Extent" type="Envelope" minOccurs="0"/>
					<xs:element name="HasHyperlinks" type="xs:boolean"/>
					<xs:element name="HasAttributes" type="xs:boolean"/>
					<xs:element name="CanIdentify" type="xs:boolean"/>
					<xs:element name="CanFind" type="xs:boolean"/>
					<xs:element name="IsFeatureLayer" type="xs:boolean"/>
					<xs:element name="Fields" type="Fields" minOccurs="0"/>
					<xs:element name="DisplayField" type="xs:string"/>
					<xs:element name="IDField" type="xs:string"/>
					<xs:element name="IsComposite" type="xs:boolean"/>
					<xs:element name="SubLayerIDs" type="ArrayOfInt" minOccurs="0"/>
					<xs:element name="ParentLayerID" type="xs:int"/>
			    <xs:element name="FieldAliases" type="ArrayOfString" minOccurs="0"/>
			    <xs:element name="CopyrightText" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfMapServerBookmark">
				<xs:sequence>
					<xs:element name="MapServerBookmark" type="MapServerBookmark" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapArea" abstract="true">
				<xs:sequence>
					<xs:element name="Extent" type="Envelope" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerBookmark">
				<xs:complexContent>
					<xs:extension base="MapArea">
						<xs:sequence>
							<xs:element name="Name" type="xs:string"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
    <xs:complexType name="Shadow" abstract="true">
      <xs:sequence />
    </xs:complexType>  
    <xs:complexType name="Background" abstract="true">
      <xs:sequence />
    </xs:complexType>
    <xs:complexType name="SymbolBackground">
      <xs:complexContent>
        <xs:extension base="Background">
          <xs:sequence>
            <xs:element name="HorizontalGap" type="xs:double" />
            <xs:element name="CornerRounding" type="xs:short" />
            <xs:element name="VerticalGap" type="xs:double" />
            <xs:element name="Symbol" type="FillSymbol" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>  
    <xs:complexType name="Border" abstract="true">
      <xs:sequence />
    </xs:complexType>
    <xs:complexType name="SymbolBorder">
      <xs:complexContent>
        <xs:extension base="Border">
          <xs:sequence>
            <xs:element name="HorizontalGap" type="xs:double" />
            <xs:element name="CornerRounding" type="xs:short" />
            <xs:element name="VerticalGap" type="xs:double" />
            <xs:element name="Symbol" type="LineSymbol" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="SymbolShadow">
      <xs:complexContent>
        <xs:extension base="Shadow">
          <xs:sequence>
            <xs:element name="Symbol" type="LineSymbol" minOccurs="0" />
            <xs:element name="CornerRounding" type="xs:short" />
            <xs:element name="HorizontalOffset" type="xs:double" />
            <xs:element name="VerticalOffset" type="xs:double" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>  
    <xs:complexType name="Element" abstract="true">
      <xs:sequence />
    </xs:complexType>
    <xs:complexType name="GraphicElement" abstract="true">
      <xs:complexContent>
        <xs:extension base="Element">
          <xs:sequence />
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="LineElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
            <xs:element name="Line" type="Geometry" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
            <xs:element name="FixedAspectRatio" type="xs:boolean" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>  
    <xs:complexType name="CircleElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Rectangle" type="Geometry" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
            <xs:element name="FixedAspectRatio" type="xs:boolean" minOccurs="0" />
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="EllipseElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Rectangle" type="Geometry" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
            <xs:element name="FixedAspectRatio" type="xs:boolean" minOccurs="0" />
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="GroupElement">
      <xs:complexContent>
        <xs:extension base="Element">
          <xs:sequence>
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Elements" type="ArrayOfGraphicElement" />
            <xs:element name="Rectangle" type="Geometry" minOccurs="0" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
            <xs:element name="FixedAspectRatio" type="xs:boolean" minOccurs="0" />
            <xs:element name="Border" type="Border" minOccurs="0" />
            <xs:element name="Background" type="Background" minOccurs="0" />
            <xs:element name="DraftMode" type="xs:boolean" minOccurs="0" />
            <xs:element name="Shadow" type="Shadow" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>      
    <xs:complexType name="MarkerElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
            <xs:element name="Point" type="Point" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="ParagraphTextElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Text" type="xs:string" minOccurs="0" />
            <xs:element name="Scale" type="xs:double" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
            <xs:element name="TextGeometry" type="Geometry" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
            <xs:element name="FrameBorder" type="Border" minOccurs="0" />
            <xs:element name="FrameBackground" type="Background" minOccurs="0" />
            <xs:element name="FrameShadow" type="Shadow" minOccurs="0" />
            <xs:element name="ColumnGap" type="xs:double" minOccurs="0" />
            <xs:element name="ColumnCount" type="xs:int" minOccurs="0" />
            <xs:element name="Margin" type="xs:double" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="PolygonElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
            <xs:element name="Polygon" type="Geometry" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
            <xs:element name="FixedAspectRation" type="xs:boolean" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="RectangleElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Rectangle" type="Geometry" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
            <xs:element name="FixedAspectRation" type="xs:boolean" minOccurs="0" />
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>  
    <xs:complexType name="TextElement">
      <xs:complexContent>
        <xs:extension base="GraphicElement">
          <xs:sequence>
            <xs:element name="Name" type="xs:string" minOccurs="0" />
            <xs:element name="Type" type="xs:string" minOccurs="0" />
            <xs:element name="AutoTransform" type="xs:boolean" minOccurs="0" />
            <xs:element name="ReferenceScale" type="xs:double" minOccurs="0" />
            <xs:element name="Text" type="xs:string" minOccurs="0" />
            <xs:element name="Scale" type="xs:boolean" minOccurs="0" />
            <xs:element name="Symbol" type="Symbol" minOccurs="0" />
            <xs:element name="TextGeometry" type="Geometry" />
            <xs:element name="Locked" type="xs:boolean" minOccurs="0" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
			<xs:complexType name="MapDescription">
				<xs:sequence>
					<xs:element name="Name" type="xs:string"/>
					<xs:element name="MapArea" type="MapArea" minOccurs="0"/>
					<xs:element name="LayerDescriptions" type="ArrayOfLayerDescription" minOccurs="0"/>
					<xs:element name="Rotation" type="xs:double"/>
					<xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
					<xs:element name="TransparentColor" type="Color" minOccurs="0"/>
					<xs:element name="SelectionColor" type="Color" minOccurs="0"/>
			    <xs:element name="BackgroundSymbol" type="FillSymbol" minOccurs="0"/>					
			    <xs:element name="CustomGraphics" type="ArrayOfGraphicElement" minOccurs="0"/>					
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapExtent">
				<xs:complexContent>
					<xs:extension base="MapArea"/>
				</xs:complexContent>
			</xs:complexType>
      <xs:complexType name="ArrayOfGraphicElement">
        <xs:sequence>
          <xs:element name="GraphicElement" type="GraphicElement" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
      </xs:complexType>			
			<xs:complexType name="ArrayOfLayerDescription">
				<xs:sequence>
					<xs:element name="LayerDescription" type="LayerDescription" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="LayerDescription">
				<xs:sequence>
					<xs:element name="LayerID" type="xs:int"/>
					<xs:element name="Visible" type="xs:boolean"/>
					<xs:element name="ShowLabels" type="xs:boolean"/>
					<xs:element name="ScaleSymbols" type="xs:boolean"/>
					<xs:element name="SelectionFeatures" type="ArrayOfInt" minOccurs="0"/>
					<xs:element name="SelectionColor" type="Color" minOccurs="0"/>
					<xs:element name="SelectionSymbol" type="Symbol" minOccurs="0"/>
					<xs:element name="SetSelectionSymbol" type="xs:boolean"/>
					<xs:element name="SelectionBufferDistance" type="xs:double"/>
					<xs:element name="ShowSelectionBuffer" type="xs:boolean"/>
					<xs:element name="DefinitionExpression" type="xs:string"/>
					<xs:element name="SourceID" type="xs:string" minOccurs="0"/>
          <xs:element name="SelectionBufferSymbol" type="FillSymbol" minOccurs="0" />					
				</xs:sequence>
			</xs:complexType>
      <xs:complexType name="FeatureExtent">
        <xs:complexContent>
          <xs:extension base="MapArea">
            <xs:sequence>
              <xs:element name="DefaultScale" type="xs:double" />
              <xs:element name="ExpandRatio" type="xs:double" default ="1.0"/>
              <xs:element name="FeatureIDs" type="ArrayOfInt" minOccurs="0" />
              <xs:element name="LayerID" type="xs:int" />
              <xs:element name="MapName" type="xs:string" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
			<xs:complexType name="ImageDescription">
				<xs:sequence>
					<xs:element name="ImageType" type="ImageType" minOccurs="0"/>
					<xs:element name="ImageDisplay" type="ImageDisplay" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ImageDisplay">
				<xs:sequence>
					<xs:element name="ImageHeight" type="xs:int"/>
					<xs:element name="ImageWidth" type="xs:int"/>
					<xs:element name="ImageDPI" type="xs:double"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ImageType">
				<xs:sequence>
					<xs:element name="ImageFormat" type="esriImageFormat"/>
					<xs:element name="ImageReturnType" type="esriImageReturnType"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapImage">
				<xs:sequence>
					<xs:element name="ImageData" type="xs:base64Binary" minOccurs="0"/>
					<xs:element name="ImageURL" type="xs:string"/>
					<xs:element name="Extent" type="Envelope" minOccurs="0"/>
					<xs:element name="VisibleLayerIDs" type="ArrayOfInt" minOccurs="0"/>
					<xs:element name="MapScale" type="xs:double"/>
					<xs:element name="ImageHeight" type="xs:int"/>
					<xs:element name="ImageWidth" type="xs:int"/>
					<xs:element name="ImageDPI" type="xs:double"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfMapServerFindResult">
				<xs:sequence>
					<xs:element name="MapServerFindResult" type="MapServerFindResult" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerFindResult">
				<xs:sequence>
					<xs:element name="Value" type="xs:string"/>
					<xs:element name="LayerID" type="xs:int"/>
					<xs:element name="FeatureID" type="xs:int"/>
					<xs:element name="FieldName" type="xs:string"/>
					<xs:element name="Shape" type="Geometry" minOccurs="0"/>
					<xs:element name="Properties" type="PropertySet" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Curve" abstract="true">
				<xs:complexContent>
					<xs:extension base="Geometry"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Segment" abstract="true">
				<xs:complexContent>
					<xs:extension base="Curve">
						<xs:sequence>
							<xs:element name="FromPoint" type="Point"/>
							<xs:element name="ToPoint" type="Point"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Polycurve" abstract="true">
				<xs:complexContent>
					<xs:extension base="Curve"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Envelope" abstract="true">
				<xs:complexContent>
					<xs:extension base="Geometry"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="EnvelopeN">
				<xs:complexContent>
					<xs:extension base="Envelope">
						<xs:sequence>
							<xs:element name="XMin" type="xs:double"/>
							<xs:element name="YMin" type="xs:double"/>
							<xs:element name="XMax" type="xs:double"/>
							<xs:element name="YMax" type="xs:double"/>
							<xs:element name="ZMin" type="xs:double" minOccurs="0"/>
							<xs:element name="ZMax" type="xs:double" minOccurs="0"/>
							<xs:element name="MMin" type="xs:double" minOccurs="0"/>
							<xs:element name="MMax" type="xs:double" minOccurs="0"/>
							<xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="EnvelopeB">
				<xs:complexContent>
					<xs:extension base="Envelope">
						<xs:sequence>
							<xs:element name="Bytes" type="xs:base64Binary"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Point" abstract="true">
				<xs:complexContent>
					<xs:extension base="Geometry"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="PointN">
				<xs:complexContent>
					<xs:extension base="Point">
						<xs:sequence>
							<xs:element name="X" type="xs:double"/>
							<xs:element name="Y" type="xs:double"/>
							<xs:element name="M" type="xs:double" minOccurs="0"/>
							<xs:element name="Z" type="xs:double" minOccurs="0"/>
							<xs:element name="ID" type="xs:int" minOccurs="0"/>
							<xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="PointB">
				<xs:complexContent>
					<xs:extension base="Point">
						<xs:sequence>
							<xs:element name="Bytes" type="xs:base64Binary"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Multipoint" abstract="true">
				<xs:complexContent>
					<xs:extension base="Geometry"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="MultipointB">
				<xs:complexContent>
					<xs:extension base="Multipoint">
						<xs:sequence>
							<xs:element name="Bytes" type="xs:base64Binary"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="MultipointN">
				<xs:complexContent>
					<xs:extension base="Multipoint">
						<xs:sequence>
							<xs:element name="HasID" type="xs:boolean"/>
							<xs:element name="HasZ" type="xs:boolean"/>
							<xs:element name="HasM" type="xs:boolean"/>
							<xs:element name="Extent" type="Envelope" minOccurs="0"/>
							<xs:element name="PointArray" type="ArrayOfPoint" minOccurs="0"/>
							<xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Line">
				<xs:complexContent>
					<xs:extension base="Segment"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="EllipticArc">
				<xs:complexContent>
					<xs:extension base="Segment">
						<xs:sequence>
							<xs:element name="EllipseStd" type="xs:boolean"/>
							<xs:element name="CenterPoint" type="Point"/>
							<xs:element name="Rotation" type="xs:double"/>
							<xs:element name="MinorMajorRatio" type="xs:double"/>
							<xs:element name="IsCounterClockWise" type="xs:boolean"/>
							<xs:element name="IsMinor" type="xs:boolean"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="CircularArc">
				<xs:complexContent>
					<xs:extension base="Segment">
						<xs:sequence>
							<xs:element name="CenterPoint" type="Point"/>
							<xs:element name="FromAngle" type="xs:double" minOccurs="0"/>
							<xs:element name="ToAngle" type="xs:double" minOccurs="0"/>
							<xs:element name="IsCounterClockwise" type="xs:boolean"/>
							<xs:element name="IsMinor" type="xs:boolean"/>
							<xs:element name="IsLine" type="xs:boolean"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="BezierCurve">
				<xs:complexContent>
					<xs:extension base="Segment">
						<xs:sequence>
							<xs:element name="Degree" type="xs:int"/>
							<xs:element name="ControlPointArray" type="ArrayOfPoint"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Path" abstract="false">
				<xs:complexContent>
					<xs:extension base="Curve">
						<xs:sequence>
							<xs:element name="PointArray" type="ArrayOfPoint" minOccurs="0"/>
							<xs:element name="SegmentArray" type="ArrayOfSegment" minOccurs="0"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Ring">
				<xs:complexContent>
					<xs:extension base="Path"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Polygon" abstract="true">
				<xs:complexContent>
					<xs:extension base="Polycurve"/>
				</xs:complexContent>
			</xs:complexType>
      <xs:complexType name="PolygonN">
        <xs:complexContent>
          <xs:extension base="Polygon">
            <xs:sequence>
					    <xs:element name="HasID" type="xs:boolean"/>
					    <xs:element name="HasZ" type="xs:boolean"/>
					    <xs:element name="HasM" type="xs:boolean"/>
					    <xs:element name="Extent" type="Envelope" minOccurs ="0"/>
              <xs:element name="RingArray" type="ArrayOfRing" />
              <xs:element name="SpatialReference" type="SpatialReference" minOccurs="0" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
			<xs:complexType name="PolygonB">
				<xs:complexContent>
					<xs:extension base="Polygon">
						<xs:sequence>
							<xs:element name="Bytes" type="xs:base64Binary"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Polyline" abstract="true">
				<xs:complexContent>
					<xs:extension base="Polycurve"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="PolylineN">
				<xs:complexContent>
					<xs:extension base="Polyline">
						<xs:sequence>
					    <xs:element name="HasID" type="xs:boolean"/>
					    <xs:element name="HasZ" type="xs:boolean"/>
					    <xs:element name="HasM" type="xs:boolean"/>
					    <xs:element name="Extent" type="Envelope" minOccurs ="0"/>
							<xs:element name="PathArray" type="ArrayOfPath" />
							<xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="PolylineB">
				<xs:complexContent>
					<xs:extension base="Polyline">
						<xs:sequence>
							<xs:element name="Bytes" type="xs:base64Binary"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="ArrayOfPoint">
				<xs:sequence>
					<xs:element name="Point" type="Point" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfPath">
				<xs:sequence>
					<xs:element name="Path" type="Path" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfRing">
				<xs:sequence>
					<xs:element name="Ring" type="Ring" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfSegment">
				<xs:sequence>
					<xs:element name="Segment" type="Segment" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MultiPatch" abstract="true">
				<xs:complexContent>
					<xs:extension base="Geometry"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="MultiPatchB">
				<xs:complexContent>
					<xs:extension base="MultiPatch">
						<xs:sequence>
							<xs:element name="Bytes" type="xs:base64Binary"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="MultiPatchN">
				<xs:complexContent>
					<xs:extension base="MultiPatch">
						<xs:sequence>
							<xs:element name="HasID" type="xs:boolean"/>
							<xs:element name="HasZ" type="xs:boolean"/>
							<xs:element name="HasM" type="xs:boolean"/>
							<xs:element name="Extent" type="Envelope"/>
							<xs:element name="SurfacePatchArray" type="ArrayOfSurfacePatch"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="ArrayOfSurfacePatch">
				<xs:annotation>
					<xs:documentation>Only TriangleFan, TriangleStrip, and Ring are surface patches.</xs:documentation>
				</xs:annotation>
				<xs:sequence>
					<xs:element name="SurfacePatch" type="Geometry" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="TriangleFan">
				<xs:complexContent>
					<xs:extension base="Geometry">
						<xs:sequence>
							<xs:element name="PointArray" type="ArrayOfPoint" minOccurs="0"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="TriangleStrip">
				<xs:complexContent>
					<xs:extension base="Geometry">
						<xs:sequence>
							<xs:element name="PointArray" type="ArrayOfPoint" minOccurs="0"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="XMLPersistedObject">
				<xs:sequence>
					<xs:element name="Bytes" type="xs:base64Binary"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Domain" abstract="true">
				<xs:sequence>
					<xs:element name="DomainName" type="xs:string"/>
					<xs:element name="FieldType" type="esriFieldType"/>
					<xs:element name="MergePolicy" type="esriMergePolicyType"/>
					<xs:element name="SplitPolicy" type="esriSplitPolicyType"/>
					<xs:element name="Description" type="xs:string" minOccurs="0"/>
					<xs:element name="Owner" type="xs:string" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Field">
				<xs:sequence>
					<xs:element name="Name" type="xs:string"/>
					<xs:element name="Type" type="esriFieldType"/>
					<xs:element name="IsNullable" type="xs:boolean"/>
					<xs:element name="Length" type="xs:int"/>
					<xs:element name="Precision" type="xs:int"/>
					<xs:element name="Scale" type="xs:int"/>
					<xs:element name="Required" type="xs:boolean" minOccurs="0"/>
					<xs:element name="Editable" type="xs:boolean" minOccurs="0"/>
					<xs:element name="DomainFixed" type="xs:boolean" minOccurs="0"/>
					<xs:element name="GeometryDef" type="GeometryDef" minOccurs="0"/>
					<xs:element name="AliasName" type="xs:string" minOccurs="0"/>
					<xs:element name="ModelName" type="xs:string" minOccurs="0"/>
					<xs:element name="DefaultValue" type="xs:anyType" minOccurs="0"/>
					<xs:element name="Domain" type="Domain" minOccurs="0"/>
					<xs:element name="RasterDef" type="RasterDef" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfField">
				<xs:sequence>
					<xs:element name="Field" type="Field" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Fields">
				<xs:sequence>
					<xs:element name="FieldArray" type="ArrayOfField"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="GeometryDef">
				<xs:sequence>
					<xs:element name="AvgNumPoints" type="xs:int"/>
					<xs:element name="GeometryType" type="esriGeometryType"/>
					<xs:element name="HasM" type="xs:boolean"/>
					<xs:element name="HasZ" type="xs:boolean"/>
					<xs:element name="SpatialReference" type="SpatialReference"/>
					<xs:element name="GridSize0" type="xs:double" minOccurs="0"/>
					<xs:element name="GridSize1" type="xs:double" minOccurs="0"/>
					<xs:element name="GridSize2" type="xs:double" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="RangeDomain">
				<xs:complexContent>
					<xs:extension base="Domain">
						<xs:sequence>
							<xs:element name="MaxValue" type="xs:anyType"/>
							<xs:element name="MinValue" type="xs:anyType"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="CodedValue">
				<xs:sequence>
					<xs:element name="Name" type="xs:string"/>
					<xs:element name="Code" type="xs:anyType"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfCodedValue">
				<xs:sequence>
					<xs:element name="CodedValue" type="CodedValue" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="CodedValueDomain">
				<xs:complexContent>
					<xs:extension base="Domain">
						<xs:sequence>
							<xs:element name="CodedValues" type="ArrayOfCodedValue"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="RasterDef">
				<xs:sequence>
					<xs:element name="Description" type="xs:string" minOccurs="0"/>
					<xs:element name="IsByRef" type="xs:boolean" minOccurs="0"/>
					<xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfMapServerIdentifyResult">
				<xs:sequence>
					<xs:element name="MapServerIdentifyResult" type="MapServerIdentifyResult" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerIdentifyResult">
				<xs:sequence>
					<xs:element name="LayerID" type="xs:int"/>
					<xs:element name="Name" type="xs:string"/>
					<xs:element name="Properties" type="PropertySet" minOccurs="0"/>
					<xs:element name="Shape" type="Geometry" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="QueryFilter">
				<xs:sequence>
					<xs:element name="SubFields" type="xs:string"  minOccurs="0"/>
					<xs:element name="WhereClause" type="xs:string"/>
					<xs:element name="SpatialReferenceFieldName" type="xs:string"  minOccurs="0"/>
					<xs:element name="Resolution" type="xs:double"/>
					<xs:element name="OutputSpatialReference" type="SpatialReference" minOccurs="0"/>
					<xs:element name="FIDSet" type="FIDSet" minOccurs="0"/>
			    <xs:element name="PostfixClause" type="xs:string" minOccurs="0"/>
			    <xs:element name="FilterDefs" type="ArrayOfFilterDef" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="SpatialFilter">
				<xs:complexContent>
					<xs:extension base="QueryFilter">
						<xs:sequence>
							<xs:element name="SearchOrder" type="esriSearchOrder"/>
							<xs:element name="SpatialRel" type="esriSpatialRelEnum"/>
							<xs:element name="SpatialRelDescription" type="xs:string"/>
							<xs:element name="FilterGeometry" type="Geometry"/>
							<xs:element name="GeometryFieldName" type="xs:string"/>
							<xs:element name="FilterOwnsGeometry" type="xs:boolean"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
	    <xs:complexType name="FilterDef" abstract="true"/>
	    <xs:complexType name="XMLFilterDef">
		    <xs:complexContent>
			    <xs:extension base="FilterDef">
				    <xs:sequence>
					    <xs:element name="FieldName" type="xs:string"/>
					    <xs:element name="Expression" type="xs:string"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="ArrayOfFilterDef">
		    <xs:sequence>
			    <xs:element name="FilterDef" type="FilterDef" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
	    </xs:complexType>
			<xs:complexType name="FIDSet">
				<xs:sequence>
					<xs:element name="FIDArray" type="ArrayOfInt"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfMapServerHyperlink">
				<xs:sequence>
					<xs:element name="MapServerHyperlink" type="MapServerHyperlink" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerHyperlink">
				<xs:sequence>
					<xs:element name="Location" type="Geometry" minOccurs="0"/>
					<xs:element name="URL" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerLegendPatch">
				<xs:sequence>
					<xs:element name="Width" type="xs:double"/>
					<xs:element name="Height" type="xs:double"/>
					<xs:element name="ImageDPI" type="xs:double"/>
					<xs:element name="LinePatch" type="LinePatch" minOccurs="0"/>
					<xs:element name="AreaPatch" type="AreaPatch" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Patch">
				<xs:sequence>
					<xs:element name="Name" type="xs:string" minOccurs="0"/>
					<xs:element name="PreserveAspectRatio" type="xs:boolean" minOccurs="0"/>
					<xs:element name="Geometry" type="Geometry" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="AreaPatch">
				<xs:complexContent>
					<xs:extension base="Patch"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="LinePatch">
				<xs:complexContent>
					<xs:extension base="Patch"/>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="ArrayOfMapServerLegendInfo">
				<xs:sequence>
					<xs:element name="MapServerLegendInfo" type="MapServerLegendInfo" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerLegendInfo">
				<xs:sequence>
					<xs:element name="LayerID" type="xs:int"/>
					<xs:element name="Name" type="xs:string"/>
					<xs:element name="LegendGroups" type="ArrayOfMapServerLegendGroup" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfMapServerLegendGroup">
				<xs:sequence>
					<xs:element name="MapServerLegendGroup" type="MapServerLegendGroup" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerLegendGroup">
				<xs:sequence>
					<xs:element name="Heading" type="xs:string"/>
					<xs:element name="LegendClasses" type="ArrayOfMapServerLegendClass" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfMapServerLegendClass">
				<xs:sequence>
					<xs:element name="MapServerLegendClass" type="MapServerLegendClass" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="MapServerLegendClass">
				<xs:sequence>
					<xs:element name="Label" type="xs:string"/>
					<xs:element name="Description" type="xs:string"/>
					<xs:element name="SymbolImage" type="ImageResult" minOccurs="0"/>
					<xs:element name="TransparentColor" type="Color" minOccurs="0"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ImageResult">
				<xs:sequence>
					<xs:element name="ImageData" type="xs:base64Binary" minOccurs="0"/>
					<xs:element name="ImageURL" type="xs:string"/>
					<xs:element name="ImageHeight" type="xs:int"/>
					<xs:element name="ImageWidth" type="xs:int"/>
					<xs:element name="ImageDPI" type="xs:double"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="SQLSyntaxInfo">
				<xs:sequence>
					<xs:element name="FunctionNames" type="PropertySet" minOccurs="0"/>
					<xs:element name="SpecialCharacters" type="PropertySet" minOccurs="0"/>
					<xs:element name="SupportedPredicates" type="ArrayOfString" minOccurs="0"/>
					<xs:element name="SupportedClauses" type="ArrayOfString" minOccurs="0"/>
					<xs:element name="IdentifierCase" type="xs:boolean"/>
					<xs:element name="DelimitedIdentifierCase" type="xs:boolean"/>
					<xs:element name="StringComparisonCase" type="xs:boolean"/>
					<xs:element name="Keywords" type="ArrayOfString" minOccurs="0"/>
					<xs:element name="InvalidCharacters" type="xs:string"/>
					<xs:element name="InvalidStartingCharacters" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfString">
				<xs:sequence>
					<xs:element name="String" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfValue">
				<xs:sequence>
					<xs:element name="Value" type="xs:anyType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Record">
				<xs:sequence>
					<xs:element name="Values" type="ArrayOfValue"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="ArrayOfRecord">
				<xs:sequence>
					<xs:element name="Record" type="Record" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="RecordSet">
				<xs:sequence>
					<xs:element name="Fields" type="Fields"/>
					<xs:element name="Records" type="ArrayOfRecord"/>
				</xs:sequence>
			</xs:complexType>
	    <xs:complexType name="Color" abstract="true">
		    <xs:sequence>
			    <xs:element name="UseWindowsDithering" type="xs:boolean"  minOccurs="0"/>
			    <xs:element name="AlphaValue" type="xs:unsignedByte"  minOccurs="0"/>
		    </xs:sequence>
	    </xs:complexType>
	    <xs:complexType name="GrayColor">
		    <xs:complexContent>
			    <xs:extension base="Color">
				    <xs:sequence>
					    <xs:element name="GrayLevel" type="xs:unsignedByte"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="RgbColor">
		    <xs:complexContent>
			    <xs:extension base="Color">
				    <xs:sequence>
					    <xs:element name="Red" type="xs:unsignedByte"/>
					    <xs:element name="Green" type="xs:unsignedByte"/>
					    <xs:element name="Blue" type="xs:unsignedByte"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="CmykColor">
		    <xs:complexContent>
			    <xs:extension base="Color">
				    <xs:sequence>
					    <xs:element name="Cyan" type="xs:unsignedByte"/>
					    <xs:element name="Magenta" type="xs:unsignedByte"/>
					    <xs:element name="Yellow" type="xs:unsignedByte"/>
					    <xs:element name="Black" type="xs:unsignedByte"/>
					    <xs:element name="Overprint" type="xs:boolean"/>
					    <xs:element name="IsSpot" type="xs:boolean"/>
					    <xs:element name="SpotDescription" type="xs:string"/>
					    <xs:element name="SpotPercent" type="xs:short"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="HlsColor">
		    <xs:complexContent>
			    <xs:extension base="Color">
				    <xs:sequence>
					    <xs:element name="Hue" type="xs:short"/>
					    <xs:element name="Lightness" type="xs:unsignedByte"/>
					    <xs:element name="Saturation" type="xs:unsignedByte"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="HsvColor">
		    <xs:complexContent>
			    <xs:extension base="Color">
				    <xs:sequence>
					    <xs:element name="Hue" type="xs:short"/>
					    <xs:element name="Saturation" type="xs:unsignedByte"/>
					    <xs:element name="Value" type="xs:unsignedByte"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="Symbol" abstract="true">
		    <xs:sequence/>
	    </xs:complexType>
	    <xs:simpleType name="esriSimpleFillStyle">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriSFSSolid"/>
			    <xs:enumeration value="esriSFSNull"/>
			    <xs:enumeration value="esriSFSHorizontal"/>
			    <xs:enumeration value="esriSFSVertical"/>
			    <xs:enumeration value="esriSFSForwardDiagonal"/>
			    <xs:enumeration value="esriSFSBackwardDiagonal"/>
			    <xs:enumeration value="esriSFSCross"/>
			    <xs:enumeration value="esriSFSDiagonalCross"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriSimpleLineStyle">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriSLSSolid"/>
			    <xs:enumeration value="esriSLSDash"/>
			    <xs:enumeration value="esriSLSDot"/>
			    <xs:enumeration value="esriSLSDashDotDot"/>
			    <xs:enumeration value="esriSLSNull"/>
			    <xs:enumeration value="esriSLSInsideFrame"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriSimpleMarkerStyle">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriSMSCircle"/>
			    <xs:enumeration value="esriSMSSquare"/>
			    <xs:enumeration value="esriSMSCross"/>
			    <xs:enumeration value="esriSMSX"/>
			    <xs:enumeration value="esriSMSDiamond"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriTextHorizontalAlignment">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriTHALeft"/>
			    <xs:enumeration value="esriTHACenter"/>
			    <xs:enumeration value="esriTHARight"/>
			    <xs:enumeration value="esriTHAFull"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriTextVerticalAlignment">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriTVATop"/>
			    <xs:enumeration value="esriTVACenter"/>
			    <xs:enumeration value="esriTVABaseline"/>
			    <xs:enumeration value="esriTVABottom"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriTextPosition">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriTPNormal"/>
			    <xs:enumeration value="esriTPSuperscript"/>
			    <xs:enumeration value="esriTPSubscript"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriTextCase">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriTCNormal"/>
			    <xs:enumeration value="esriTCLowercase"/>
			    <xs:enumeration value="esriTCAllCaps"/>
			    <xs:enumeration value="esriTCSmallCaps"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriTextDirection">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriTDHorizontal"/>
			    <xs:enumeration value="esriTDAngle"/>
			    <xs:enumeration value="esriTDVertical"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriMaskStyle">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriMSNone"/>
			    <xs:enumeration value="esriMSHalo"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriBalloonCalloutStyle">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriBCSRectangle"/>
			    <xs:enumeration value="esriBCSRoundedRectangle"/>
			    <xs:enumeration value="esriBCSOval"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:simpleType name="esriLineCalloutStyle">
		    <xs:restriction base="xs:string">
			    <xs:enumeration value="esriLCSBase"/>
			    <xs:enumeration value="esriLCSMidpoint"/>
			    <xs:enumeration value="esriLCSThreePoint"/>
			    <xs:enumeration value="esriLCSFourPoint"/>
			    <xs:enumeration value="esriLCSUnderline"/>
			    <xs:enumeration value="esriLCSCustom"/>
			    <xs:enumeration value="esriLCSCircularCW"/>
			    <xs:enumeration value="esriLCSCircularCCW"/>
		    </xs:restriction>
	    </xs:simpleType>
	    <xs:complexType name="SimpleFillSymbol">
		    <xs:complexContent>
			    <xs:extension base="FillSymbol">
				    <xs:sequence>
					    <xs:element name="Style" type="esriSimpleFillStyle"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="SimpleLineSymbol">
		    <xs:complexContent>
			    <xs:extension base="LineSymbol">
				    <xs:sequence>
					    <xs:element name="Style" type="esriSimpleLineStyle"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="SimpleMarkerSymbol">
		    <xs:complexContent>
			    <xs:extension base="MarkerSymbol">
				    <xs:sequence>
					    <xs:element name="Outline" type="xs:boolean"/>
					    <xs:element name="OutlineSize" type="xs:double"/>
					    <xs:element name="OutlineColor" type="Color"/>
					    <xs:element name="Style" type="esriSimpleMarkerStyle"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="TextSymbol">
		    <xs:complexContent>
			    <xs:extension base="Symbol">
				    <xs:sequence>
					    <xs:element name="Color" type="Color" minOccurs="0"/>
					    <xs:element name="BreakCharIndex" type="xs:int"/>
					    <xs:element name="VerticalAlignment" type="esriTextVerticalAlignment"/>
					    <xs:element name="HorizontalAlignment" type="esriTextHorizontalAlignment"/>
					    <xs:element name="Clip" type="xs:boolean"/>
					    <xs:element name="RightToLeft" type="xs:boolean"/>
					    <xs:element name="Angle" type="xs:double"/>
					    <xs:element name="XOffset" type="xs:double"/>
					    <xs:element name="YOffset" type="xs:double"/>
					    <xs:element name="ShadowColor" type="Color" minOccurs="0"/>
					    <xs:element name="ShadowXOffset" type="xs:double"/>
					    <xs:element name="ShadowYOffset" type="xs:double"/>
					    <xs:element name="TextPosition" type="esriTextPosition"/>
					    <xs:element name="TextCase" type="esriTextCase"/>
					    <xs:element name="CharacterSpacing" type="xs:double"/>
					    <xs:element name="CharacterWidth" type="xs:double" default ="100.0"/>
					    <xs:element name="WordSpacing" type="xs:double" default ="100.0"/>
					    <xs:element name="Kerning" type="xs:boolean"/>
					    <xs:element name="Leading" type="xs:double"/>
					    <xs:element name="TextDirection" type="esriTextDirection"/>
					    <xs:element name="FlipAngle" type="xs:double"/>
					    <xs:element name="TypeSetting" type="xs:boolean"/>
					    <xs:element name="TextPathClass" type="xs:string" minOccurs="0"/>
					    <xs:element name="FillSymbol" type="Symbol" minOccurs="0"/>
					    <xs:element name="Text" type="xs:string"/>
					    <xs:element name="Size" type="xs:double"/>
					    <xs:element name="MaskStyle" type="esriMaskStyle"/>
					    <xs:element name="MaskSize" type="xs:double"/>
					    <xs:element name="MaskSymbol" type="Symbol" minOccurs="0"/>
					    <xs:element name="FontName" type="xs:string" minOccurs="0"/>
					    <xs:element name="FontItalic" type="xs:boolean" minOccurs="0"/>
					    <xs:element name="FontUnderline" type="xs:boolean" minOccurs="0"/>
					    <xs:element name="FontStrikethrough" type="xs:boolean" minOccurs="0"/>
					    <xs:element name="FontWeight" type="xs:int" minOccurs="0"/>
					    <xs:element name="FontCharset" type="xs:int" minOccurs="0"/>
					    <xs:element name="FontSizeHi" type="xs:int" minOccurs="0"/>
					    <xs:element name="FontSizeLo" type="xs:int" minOccurs="0"/>
					    <xs:element name="TextParserClass" type="xs:string" minOccurs="0"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="CharacterMarkerSymbol">
		    <xs:complexContent>
			    <xs:extension base="CartographicMarkerSymbol">
				    <xs:sequence>
					    <xs:element name="CharacterIndex" type="xs:int"/>
					    <xs:element name="FontName" type="xs:string" minOccurs="0"/>
					    <xs:element name="FontItalic" type="xs:boolean" minOccurs="0"/>
					    <xs:element name="FontUnderline" type="xs:boolean" minOccurs="0"/>
					    <xs:element name="FontStrikethrough" type="xs:boolean" minOccurs="0"/>
					    <xs:element name="FontWeight" type="xs:int" minOccurs="0"/>
					    <xs:element name="FontCharset" type="xs:int" minOccurs="0"/>
					    <xs:element name="FontSizeHi" type="xs:int" minOccurs="0"/>
					    <xs:element name="FontSizeLo" type="xs:int" minOccurs="0"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>	
	    <xs:complexType name="PictureMarkerSymbol">
		    <xs:complexContent>
			    <xs:extension base="CartographicMarkerSymbol">
				    <xs:sequence>
					    <xs:element name="Picture" type="xs:base64Binary" minOccurs="0"/>
					    <xs:element name="BitmapTransColor" type="Color" minOccurs="0"/>
					    <xs:element name="BgColor" type="Color" minOccurs="0"/>
					    <xs:element name="FgColor" type="Color" minOccurs="0"/>					    
					    <xs:element name="Swap1BitColor" type="xs:boolean" minOccurs="0"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="PictureFillSymbol">
		    <xs:complexContent>
			    <xs:extension base="FillSymbol">
				    <xs:sequence>
					    <xs:element name="Picture" type="xs:base64Binary"/>
					    <xs:element name="BgColor" type="Color" minOccurs="0"/>
					    <xs:element name="FgColor" type="Color" minOccurs="0"/>
					    <xs:element name="BitmapTransColor" type="Color" minOccurs="0"/>
					    <xs:element name="XSeparation" type="xs:double" minOccurs="0"/>
					    <xs:element name="YSeparation" type="xs:double" minOccurs="0"/>					
					    <xs:element name="Swap1BitColor" type="xs:boolean" minOccurs="0"/>
					    <xs:element name="Angle" type="xs:double" minOccurs="0"/>
					    <xs:element name="XOffset" type="xs:double" minOccurs="0"/>
					    <xs:element name="YOffset" type="xs:double" minOccurs="0"/>					
					    <xs:element name="XScale" type="xs:double" minOccurs="0" default ="1.0"/>
					    <xs:element name="YScale" type="xs:double" minOccurs="0" default ="1.0"/>					
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="BalloonCallout">
		    <xs:complexContent>
			    <xs:extension base="Callout"/>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="LineCallout">
		    <xs:complexContent>
			    <xs:extension base="Callout">
				    <xs:sequence/>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="MarkerTextBackground">
		    <xs:complexContent>
			    <xs:extension base="TextBackground">
				    <xs:sequence>
					    <xs:element name="Scale" type="xs:boolean"/>
					    <xs:element name="Symbol" type="Symbol" minOccurs="0"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="SimpleLineCallout">
		    <xs:complexContent>
			    <xs:extension base="Callout">
				    <xs:sequence>
					    <xs:element name="AutoSnap" type="xs:boolean"/>
					    <xs:element name="LineGeometry" type="Geometry" minOccurs="0"/>
					    <xs:element name="LineSymbol" type="Symbol" minOccurs="0"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="FillSymbol" abstract="true">
		    <xs:complexContent>
			    <xs:extension base="Symbol">
				    <xs:sequence>
					    <xs:element name="Color" type="Color" minOccurs="0"/>
					    <xs:element name="Outline" type="LineSymbol" minOccurs="0"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="LineSymbol" abstract="true">
		    <xs:complexContent>
			    <xs:extension base="Symbol">
				    <xs:sequence>
					    <xs:element name="Color" type="Color" minOccurs="0"/>
					    <xs:element name="Width" type="xs:double"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="MarkerSymbol" abstract="true">
		    <xs:complexContent>
			    <xs:extension base="Symbol">
				    <xs:sequence>
					    <xs:element name="Angle" type="xs:double"/>
					    <xs:element name="Color" type="Color" minOccurs="0"/>
					    <xs:element name="Size" type="xs:double"/>
					    <xs:element name="XOffset" type="xs:double"/>
					    <xs:element name="YOffset" type="xs:double"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="TextBackground" abstract="true"/>
	    <xs:complexType name="CartographicMarkerSymbol" abstract="true">
		    <xs:complexContent>
			    <xs:extension base="MarkerSymbol">
				    <xs:sequence>
					    <xs:element name="XScale" type="xs:double" default ="1.0"/>
              <xs:element name="YScale" type="xs:double" default ="1.0"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="Callout" abstract="true">
		    <xs:complexContent>
			    <xs:extension base="TextBackground">
				    <xs:sequence>
					    <xs:element name="AnchorPoint" type="Point" minOccurs="0"/>
					    <xs:element name="LeaderTolerance" type="xs:double"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="XMLBinarySymbol">
		    <xs:complexContent>
			    <xs:extension base="Symbol">
				    <xs:sequence>
					    <xs:element name="Data" type="XMLPersistedObject"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>
	    <xs:complexType name="XMLBinaryFillSymbol">
		    <xs:complexContent>
			    <xs:extension base="FillSymbol">
				    <xs:sequence>
					    <xs:element name="Data" type="XMLPersistedObject"/>
				    </xs:sequence>
			    </xs:extension>
		    </xs:complexContent>
	    </xs:complexType>	
			<xs:simpleType name="esriSpatialRelEnum">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriSpatialRelUndefined"/>
					<xs:enumeration value="esriSpatialRelIntersects"/>
					<xs:enumeration value="esriSpatialRelEnvelopeIntersects"/>
					<xs:enumeration value="esriSpatialRelIndexIntersects"/>
					<xs:enumeration value="esriSpatialRelTouches"/>
					<xs:enumeration value="esriSpatialRelOverlaps"/>
					<xs:enumeration value="esriSpatialRelCrosses"/>
					<xs:enumeration value="esriSpatialRelWithin"/>
					<xs:enumeration value="esriSpatialRelContains"/>
					<xs:enumeration value="esriSpatialRelRelation"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriSearchOrder">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriSearchOrderSpatial"/>
					<xs:enumeration value="esriSearchOrderAttribute"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriFieldType">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriFieldTypeInteger"/>
					<xs:enumeration value="esriFieldTypeSmallInteger"/>
					<xs:enumeration value="esriFieldTypeDouble"/>
					<xs:enumeration value="esriFieldTypeSingle"/>
					<xs:enumeration value="esriFieldTypeString"/>
					<xs:enumeration value="esriFieldTypeDate"/>
					<xs:enumeration value="esriFieldTypeGeometry"/>
					<xs:enumeration value="esriFieldTypeOID"/>
					<xs:enumeration value="esriFieldTypeBlob"/>
					<xs:enumeration value="esriFieldTypeGlobalID"/>
					<xs:enumeration value="esriFieldTypeRaster"/>
					<xs:enumeration value="esriFieldTypeGUID"/>
					<xs:enumeration value="esriFieldTypeXML"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriMergePolicyType">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriMPTSumValues"/>
					<xs:enumeration value="esriMPTAreaWeighted"/>
					<xs:enumeration value="esriMPTDefaultValue"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriSplitPolicyType">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriSPTGeometryRatio"/>
					<xs:enumeration value="esriSPTDuplicate"/>
					<xs:enumeration value="esriSPTDefaultValue"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriImageReturnType">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriImageReturnURL"/>
					<xs:enumeration value="esriImageReturnMimeData"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriUnits">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriUnknownUnits"/>
					<xs:enumeration value="esriInches"/>
					<xs:enumeration value="esriPoints"/>
					<xs:enumeration value="esriFeet"/>
					<xs:enumeration value="esriYards"/>
					<xs:enumeration value="esriMiles"/>
					<xs:enumeration value="esriNauticalMiles"/>
					<xs:enumeration value="esriMillimeters"/>
					<xs:enumeration value="esriCentimeters"/>
					<xs:enumeration value="esriMeters"/>
					<xs:enumeration value="esriKilometers"/>
					<xs:enumeration value="esriDecimalDegrees"/>
					<xs:enumeration value="esriDecimeters"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriIdentifyOption">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriIdentifyTopmost"/>
					<xs:enumeration value="esriIdentifyAllLayers"/>
					<xs:enumeration value="esriIdentifyVisibleLayers"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriFindOption">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriFindVisibleLayers"/>
					<xs:enumeration value="esriFindAllLayers"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType name="esriImageFormat">
				<xs:restriction base="xs:string">
					<xs:enumeration value="esriImageNone"/>
					<xs:enumeration value="esriImageBMP"/>
					<xs:enumeration value="esriImageJPG"/>
					<xs:enumeration value="esriImageDIB"/>
					<xs:enumeration value="esriImageTIFF"/>
					<xs:enumeration value="esriImagePNG"/>
					<xs:enumeration value="esriImagePNG24"/>
					<xs:enumeration value="esriImageEMF"/>
					<xs:enumeration value="esriImagePS"/>
					<xs:enumeration value="esriImagePDF"/>
					<xs:enumeration value="esriImageAI"/>
					<xs:enumeration value="esriImageGIF"/>
					<xs:enumeration value="esriImageSVG"/>
				</xs:restriction>
			</xs:simpleType>
	    <xs:complexType name="TileCacheInfo">
		    <xs:sequence>
			    <xs:element name="SpatialReference" type="SpatialReference" minOccurs="0"/>
			    <xs:element name="TileOrigin" type="Point" minOccurs="0"/>
			    <xs:element name="TileCols" type="xs:int"/>
			    <xs:element name="TileRows" type="xs:int"/>
			    <xs:element name="DPI" type="xs:int"/>
			    <xs:element name="LODInfos" type="ArrayOfLODInfo" minOccurs="0"/>
		    </xs:sequence>
	    </xs:complexType>
	    <xs:complexType name="LODInfo">
		    <xs:sequence>
			    <xs:element name="LevelID" type="xs:int"/>
			    <xs:element name="Scale" type="xs:double"/>
			    <xs:element name="Resolution" type="xs:double"/>
		    </xs:sequence>
	    </xs:complexType>
	    <xs:complexType name="ArrayOfLODInfo">
		    <xs:sequence>
			    <xs:element name="LODInfo" type="LODInfo" minOccurs="0" maxOccurs="unbounded"/>
		    </xs:sequence>
	    </xs:complexType>
		</xs:schema>
	</types>
	<message name="GetDocumentInfoIn">
		<part name="parameters" element="e:GetDocumentInfo"/>
	</message>
	<message name="GetDocumentInfoOut">
		<part name="parameters" element="e:GetDocumentInfoResponse"/>
	</message>
	<message name="GetMapCountIn">
		<part name="parameters" element="e:GetMapCount"/>
	</message>
	<message name="GetMapCountOut">
		<part name="parameters" element="e:GetMapCountResponse"/>
	</message>
	<message name="GetMapNameIn">
		<part name="parameters" element="e:GetMapName"/>
	</message>
	<message name="GetMapNameOut">
		<part name="parameters" element="e:GetMapNameResponse"/>
	</message>
	<message name="GetDefaultMapNameIn">
		<part name="parameters" element="e:GetDefaultMapName"/>
	</message>
	<message name="GetDefaultMapNameOut">
		<part name="parameters" element="e:GetDefaultMapNameResponse"/>
	</message>
	<message name="GetServerInfoIn">
		<part name="parameters" element="e:GetServerInfo"/>
	</message>
	<message name="GetServerInfoOut">
		<part name="parameters" element="e:GetServerInfoResponse"/>
	</message>
	<message name="ExportMapImageIn">
		<part name="parameters" element="e:ExportMapImage"/>
	</message>
	<message name="ExportMapImageOut">
		<part name="parameters" element="e:ExportMapImageResponse"/>
	</message>
	<message name="FindIn">
		<part name="parameters" element="e:Find"/>
	</message>
	<message name="FindOut">
		<part name="parameters" element="e:FindResponse"/>
	</message>
	<message name="IdentifyIn">
		<part name="parameters" element="e:Identify"/>
	</message>
	<message name="IdentifyOut">
		<part name="parameters" element="e:IdentifyResponse"/>
	</message>
	<message name="QueryFeatureCountIn">
		<part name="parameters" element="e:QueryFeatureCount"/>
	</message>
	<message name="QueryFeatureCountOut">
		<part name="parameters" element="e:QueryFeatureCountResponse"/>
	</message>
	<message name="QueryFeatureIDsIn">
		<part name="parameters" element="e:QueryFeatureIDs"/>
	</message>
	<message name="QueryFeatureIDsOut">
		<part name="parameters" element="e:QueryFeatureIDsResponse"/>
	</message>
	<message name="QueryFeatureDataIn">
		<part name="parameters" element="e:QueryFeatureData"/>
	</message>
	<message name="QueryFeatureDataOut">
		<part name="parameters" element="e:QueryFeatureDataResponse"/>
	</message>
	<message name="QueryHyperlinksIn">
		<part name="parameters" element="e:QueryHyperlinks"/>
	</message>
	<message name="QueryHyperlinksOut">
		<part name="parameters" element="e:QueryHyperlinksResponse"/>
	</message>
	<message name="ComputeScaleIn">
		<part name="parameters" element="e:ComputeScale"/>
	</message>
	<message name="ComputeScaleOut">
		<part name="parameters" element="e:ComputeScaleResponse"/>
	</message>
	<message name="ComputeDistanceIn">
		<part name="parameters" element="e:ComputeDistance"/>
	</message>
	<message name="ComputeDistanceOut">
		<part name="parameters" element="e:ComputeDistanceResponse"/>
	</message>
	<message name="ToMapPointsIn">
		<part name="parameters" element="e:ToMapPoints"/>
	</message>
	<message name="ToMapPointsOut">
		<part name="parameters" element="e:ToMapPointsResponse"/>
	</message>
	<message name="FromMapPointsIn">
		<part name="parameters" element="e:FromMapPoints"/>
	</message>
	<message name="FromMapPointsOut">
		<part name="parameters" element="e:FromMapPointsResponse"/>
	</message>
	<message name="GetLegendInfoIn">
		<part name="parameters" element="e:GetLegendInfo"/>
	</message>
	<message name="GetLegendInfoOut">
		<part name="parameters" element="e:GetLegendInfoResponse"/>
	</message>
	<message name="GetSQLSyntaxInfoIn">
		<part name="parameters" element="e:GetSQLSyntaxInfo"/>
	</message>
	<message name="GetSQLSyntaxInfoOut">
		<part name="parameters" element="e:GetSQLSyntaxInfoResponse"/>
	</message>
	<message name="GetSupportedImageReturnTypesIn">
		<part name="parameters" element="e:GetSupportedImageReturnTypes"/>
	</message>
	<message name="GetSupportedImageReturnTypesOut">
		<part name="parameters" element="e:GetSupportedImageReturnTypesResponse"/>
	</message>
	<message name="IsFixedScaleMapIn">
		<part name="parameters" element="e:IsFixedScaleMap"/>
	</message>
	<message name="IsFixedScaleMapOut">
		<part name="parameters" element="e:IsFixedScaleMapResponse"/>
	</message>
	<message name="HasSingleFusedMapCacheIn">
		<part name="parameters" element="e:HasSingleFusedMapCache"/>
	</message>
	<message name="HasSingleFusedMapCacheOut">
		<part name="parameters" element="e:HasSingleFusedMapCacheResponse"/>
	</message>
	<message name="GetTileCacheInfoIn">
		<part name="parameters" element="e:GetTileCacheInfo"/>
	</message>
	<message name="GetTileCacheInfoOut">
		<part name="parameters" element="e:GetTileCacheInfoResponse"/>
	</message>
	<message name="GetMapTileIn">
		<part name="parameters" element="e:GetMapTile"/>
	</message>
	<message name="GetMapTileOut">
		<part name="parameters" element="e:GetMapTileResponse"/>
	</message>
	<message name="HasLayerCacheIn">
		<part name="parameters" element="e:HasLayerCache"/>
	</message>
	<message name="HasLayerCacheOut">
		<part name="parameters" element="e:HasLayerCacheResponse"/>
	</message>
	<message name="GetLayerTileIn">
		<part name="parameters" element="e:GetLayerTile"/>
	</message>
	<message name="GetLayerTileOut">
		<part name="parameters" element="e:GetLayerTileResponse"/>
	</message>
	<message name="GetVirtualCacheDirectoryIn">
		<part name="parameters" element="e:GetVirtualCacheDirectory"/>
	</message>
	<message name="GetVirtualCacheDirectoryOut">
		<part name="parameters" element="e:GetVirtualCacheDirectoryResponse"/>
	</message>
    <message name="GetCacheNameIn">
		<part name="parameters" element="e:GetCacheName"/>
	</message>
	<message name="GetCacheNameOut">
		<part name="parameters" element="e:GetCacheNameResponse"/>
	</message>
	<portType name="MapServerPort">
		<operation name="GetDocumentInfo">
			<input message="e:GetDocumentInfoIn"/>
			<output message="e:GetDocumentInfoOut"/>
		</operation>
		<operation name="GetMapCount">
			<input message="e:GetMapCountIn"/>
			<output message="e:GetMapCountOut"/>
		</operation>
		<operation name="GetMapName">
			<input message="e:GetMapNameIn"/>
			<output message="e:GetMapNameOut"/>
		</operation>
		<operation name="GetDefaultMapName">
			<input message="e:GetDefaultMapNameIn"/>
			<output message="e:GetDefaultMapNameOut"/>
		</operation>
		<operation name="GetServerInfo">
			<input message="e:GetServerInfoIn"/>
			<output message="e:GetServerInfoOut"/>
		</operation>
		<operation name="ExportMapImage">
			<input message="e:ExportMapImageIn"/>
			<output message="e:ExportMapImageOut"/>
		</operation>
		<operation name="Find">
			<input message="e:FindIn"/>
			<output message="e:FindOut"/>
		</operation>
		<operation name="Identify">
			<input message="e:IdentifyIn"/>
			<output message="e:IdentifyOut"/>
		</operation>
		<operation name="QueryFeatureCount">
			<input message="e:QueryFeatureCountIn"/>
			<output message="e:QueryFeatureCountOut"/>
		</operation>
		<operation name="QueryFeatureIDs">
			<input message="e:QueryFeatureIDsIn"/>
			<output message="e:QueryFeatureIDsOut"/>
		</operation>
		<operation name="QueryFeatureData">
			<input message="e:QueryFeatureDataIn"/>
			<output message="e:QueryFeatureDataOut"/>
		</operation>
		<operation name="QueryHyperlinks">
			<input message="e:QueryHyperlinksIn"/>
			<output message="e:QueryHyperlinksOut"/>
		</operation>
		<operation name="ComputeScale">
			<input message="e:ComputeScaleIn"/>
			<output message="e:ComputeScaleOut"/>
		</operation>
		<operation name="ComputeDistance">
			<input message="e:ComputeDistanceIn"/>
			<output message="e:ComputeDistanceOut"/>
		</operation>
		<operation name="ToMapPoints">
			<input message="e:ToMapPointsIn"/>
			<output message="e:ToMapPointsOut"/>
		</operation>
		<operation name="FromMapPoints">
			<input message="e:FromMapPointsIn"/>
			<output message="e:FromMapPointsOut"/>
		</operation>
		<operation name="GetLegendInfo">
			<input message="e:GetLegendInfoIn"/>
			<output message="e:GetLegendInfoOut"/>
		</operation>
		<operation name="GetSQLSyntaxInfo">
			<input message="e:GetSQLSyntaxInfoIn"/>
			<output message="e:GetSQLSyntaxInfoOut"/>
		</operation>
		<operation name="GetSupportedImageReturnTypes">
			<input message="e:GetSupportedImageReturnTypesIn"/>
			<output message="e:GetSupportedImageReturnTypesOut"/>
		</operation>
		<operation name="IsFixedScaleMap">
			<input message="e:IsFixedScaleMapIn"/>
			<output message="e:IsFixedScaleMapOut"/>
		</operation>
		<operation name="HasSingleFusedMapCache">
			<input message="e:HasSingleFusedMapCacheIn"/>
			<output message="e:HasSingleFusedMapCacheOut"/>
		</operation>
		<operation name="GetTileCacheInfo">
			<input message="e:GetTileCacheInfoIn"/>
			<output message="e:GetTileCacheInfoOut"/>
		</operation>
		<operation name="GetMapTile">
			<input message="e:GetMapTileIn"/>
			<output message="e:GetMapTileOut"/>
		</operation>
		<operation name="HasLayerCache">
			<input message="e:HasLayerCacheIn"/>
			<output message="e:HasLayerCacheOut"/>
		</operation>
		<operation name="GetLayerTile">
			<input message="e:GetLayerTileIn"/>
			<output message="e:GetLayerTileOut"/>
		</operation>
		<operation name="GetVirtualCacheDirectory">
			<input message="e:GetVirtualCacheDirectoryIn"/>
			<output message="e:GetVirtualCacheDirectoryOut"/>
		</operation>
        <operation name="GetCacheName">
			<input message="e:GetCacheNameIn"/>
			<output message="e:GetCacheNameOut"/>
		</operation>
	</portType>
	<binding name="MapServerBinding" type="e:MapServerPort">
		<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
		<operation name="GetDocumentInfo">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetMapCount">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetMapName">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetDefaultMapName">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetServerInfo">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="ExportMapImage">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="Find">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="Identify">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="QueryFeatureCount">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="QueryFeatureIDs">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="QueryFeatureData">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="QueryHyperlinks">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="ComputeScale">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="ComputeDistance">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="ToMapPoints">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="FromMapPoints">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetLegendInfo">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetSQLSyntaxInfo">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetSupportedImageReturnTypes">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="IsFixedScaleMap">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="HasSingleFusedMapCache">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetTileCacheInfo">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetMapTile">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="HasLayerCache">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetLayerTile">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetVirtualCacheDirectory">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
        <operation name="GetCacheName">
			<soap:operation soapAction="" style="document"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
	</binding>
	<service name="#NAME#">
		<port name="MapServerPort" binding="e:MapServerBinding">
			<soap:address location="#URL#"/>
		</port>
	</service>
</definitions>
