Globe Service (GlobeServer) WSDL

 

<definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:e="http://www.esri.com/schemas/ArcGIS/10.0" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://www.esri.com/schemas/ArcGIS/10.0">

  <types>

    <xs:schema targetNamespace="http://www.esri.com/schemas/ArcGIS/10.0" xmlns="http://www.esri.com/schemas/ArcGIS/10.0">

      <xs:element name="GetVersion">

        <xs:complexType />

      </xs:element>

      <xs:element name="GetVersionResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:decimal" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetLayerCount">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="ParentID" type="xs:int" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetLayerCountResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:int" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="Find">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

            <xs:element name="SearchString" type="xs:string" />

            <xs:element name="Contains" type="xs:boolean" />

            <xs:element name="SearchFields" type="xs:string" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="FindResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="ArrayOfGlobeServerFindResult" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="Identify">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

            <xs:element name="OID" type="xs:int" />

            <xs:element name="SearchShape" type="Geometry" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="IdentifyResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="ArrayOfGlobeServerIdentifyResult" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetLayerInfos">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="ParentID" type="xs:int" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetLayerInfosResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="ArrayOfGlobeLayerInfo" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetLegendInfos">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerIDs" type="ArrayOfInt" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetLegendInfosResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="ArrayOfGlobeLegendInfo" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetConfig">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetConfigResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:base64Binary" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetMQT">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

            <xs:element name="Face" type="xs:int" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetMQTResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:base64Binary" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetConfiguration">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetConfigurationResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:base64Binary" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetTile">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

            <xs:element name="Face" 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="GetTileResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:base64Binary" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetSymbols">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

            <xs:element name="SymbolIDs" type="ArrayOfInt" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetSymbolsResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:base64Binary" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetTextures">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

            <xs:element name="TextureIDs" type="ArrayOfInt" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetTexturesResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:base64Binary" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetTexturesEx">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="LayerID" type="xs:int" />

            <xs:element name="TextureIDs" type="ArrayOfInt" />

            <xs:element name="GetDDT" type="xs:boolean" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetTexturesExResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="xs:base64Binary" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:element name="GetAnimation">

        <xs:complexType />

      </xs:element>

      <xs:element name="GetAnimationResponse">

        <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="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="GetCacheControlInfo">

        <xs:complexType>

          <xs:sequence />

        </xs:complexType>

      </xs:element>

      <xs:element name="GetCacheControlInfoResponse">

        <xs:complexType>

          <xs:sequence>

            <xs:element name="Result" type="CacheControlInfo" />

          </xs:sequence>

        </xs:complexType>

      </xs:element>

      <xs:complexType name="GlobeLayerInfo">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <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="Visible" type="xs:boolean" />

          <xs:element name="LayerType" type="xs:string" />

          <xs:element minOccurs="0" name="Extent" type="Envelope" />

          <xs:element minOccurs="0" name="Fields" type="Fields" />

          <xs:element name="DisplayField" type="xs:string" />

          <xs:element name="Transparency" type="xs:int" />

          <xs:element name="IsComposite" type="xs:boolean" />

          <xs:element name="IsGroup" type="xs:boolean" />

          <xs:element name="ParentLayerID" type="xs:int" />

          <xs:element name="DataType" type="esriGlobeDataType" />

          <xs:element name="MaxDistance" type="xs:decimal" />

          <xs:element name="MinDistance" type="xs:decimal" />

          <xs:element name="PerTileVisibility" type="xs:boolean" />

          <xs:element name="Use16BitsColor" type="xs:boolean" />

          <xs:element name="Use16BitsElevation" type="xs:boolean" />

          <xs:element name="LossyCompression" type="xs:boolean" />

          <xs:element name="CompressionQuality" type="xs:int" />

          <xs:element name="HasOIDs" type="xs:boolean" />

          <xs:element name="Scale3DSymbols" type="xs:boolean" />

          <xs:element name="Priority" type="xs:int" />

          <xs:element name="FloatingOrder" type="xs:int" />

          <xs:element name="SamplingMode" type="esriGlobeImageSamplingMode" />

          <xs:element name="MinCellSize" type="xs:decimal" />

          <xs:element name="Rasterized" type="xs:boolean" />

          <xs:element name="MetersPerPoint" type="xs:decimal" />

          <xs:element name="Extruded" type="xs:boolean" />

          <xs:element name="FeatureLOD" type="xs:int" />

          <xs:element name="ConsolidatedParent" type="xs:boolean" />

          <xs:element name="CatalogCrossoverLOD" type="xs:int" />

          <xs:element name="BaseID" type="xs:int" />

          <xs:element name="BaseOption" type="esriGlobeLayerBaseOption" />

          <xs:element name="ElevationExpression" type="xs:string" />

          <xs:element name="Offset" type="xs:decimal" />

          <xs:element name="ZFactor" type="xs:decimal" />

          <xs:element name="HasElevation" type="xs:boolean" />

          <xs:element name="UseElevation" type="xs:boolean" />

          <xs:element name="ExtrusionType" type="esriExtrusionType" />

          <xs:element name="ExtrusionExpression" type="xs:string" />

          <xs:element name="Illuminate" type="xs:boolean" />

          <xs:element name="Smooth" type="xs:boolean" />

          <xs:element name="CullMode" type="esri3DFaceCulling" />

          <xs:element minOccurs="0" name="GraphicsLayer" type="GlobeGraphicsLayer" />

          <xs:element name="CopyrightText" type="xs:string" />

          <xs:element minOccurs="0" name="MinLOD" type="xs:int">

            <xs:annotation>

              <xs:documentation>The minimum LOD of the Layer.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="MaxLOD" type="xs:int">

            <xs:annotation>

              <xs:documentation>The minimum LOD of the Layer.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="RasterTileSize" type="xs:int">

            <xs:annotation>

              <xs:documentation>Rasterized vector tile size.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="RasterTileLogSize" type="xs:int">

            <xs:annotation>

              <xs:documentation>Rasterized vector logarithm tile size.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="TextureDownsamplingFactor" type="xs:double">

            <xs:annotation>

              <xs:documentation>The texture down-sampling factor for textured multipatches.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="TextureCompressionType" type="xs:int">

            <xs:annotation>

              <xs:documentation>The current texture compression type.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="TextureDisplayType" type="xs:int">

            <xs:annotation>

              <xs:documentation>The current texture display type.</xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfGlobeLayerInfo">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="GlobeLayerInfo" type="GlobeLayerInfo" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="GlobeLegendInfo">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="LayerID" type="xs:int" />

          <xs:element name="Name" type="xs:string" />

          <xs:element minOccurs="0" name="LegendGroups" type="ArrayOfLegendGroup" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfGlobeLegendInfo">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="GlobeLegendInfo" type="GlobeLegendInfo" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="GlobeServerIdentifyResult">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="Name" type="xs:string" />

          <xs:element name="ObjectID" type="xs:int" />

          <xs:element minOccurs="0" name="Shape" type="Geometry" />

          <xs:element minOccurs="0" name="Properties" type="PropertySet" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfGlobeServerIdentifyResult">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="GlobeServerIdentifyResult" type="GlobeServerIdentifyResult" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="GlobeServerFindResult">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="Value" type="xs:string" />

          <xs:element name="FieldName" type="xs:string" />

          <xs:element name="ObjectID" type="xs:int" />

          <xs:element minOccurs="0" name="Shape" type="Geometry" />

          <xs:element minOccurs="0" name="Properties" type="PropertySet" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfGlobeServerFindResult">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="GlobeServerFindResult" type="GlobeServerFindResult" />

        </xs:sequence>

      </xs:complexType>

      <xs:simpleType name="esriGlobeDataType">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriGlobeDataInvalid" />

          <xs:enumeration value="esriGlobeDataTexture" />

          <xs:enumeration value="esriGlobeDataElevation" />

          <xs:enumeration value="esriGlobeDataVector" />

          <xs:enumeration value="esriGlobeDataText" />

          <xs:enumeration value="esriGlobeDataObject" />

          <xs:enumeration value="esriGlobeDataPoint" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriGlobeImageSamplingMode">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriGlobeImageSamplingNearest" />

          <xs:enumeration value="esriGlobeImageSamplingSmooth" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriGlobeLayerBaseOption">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriGlobeLayerBaseGlobe" />

          <xs:enumeration value="esriGlobeLayerBaseExpression" />

          <xs:enumeration value="esriGlobeLayerBaseLayer" />

          <xs:enumeration value="esriGlobeLayerBaseSelf" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriExtrusionType">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriExtrusionNone" />

          <xs:enumeration value="esriExtrusionMinZ" />

          <xs:enumeration value="esriExtrusionMaxZ" />

          <xs:enumeration value="esriExtrusionBase" />

          <xs:enumeration value="esriExtrusionAbsolute" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esri3DFaceCulling">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriFaceCullingNone" />

          <xs:enumeration value="esriFaceCullingFront" />

          <xs:enumeration value="esriFaceCullingBack" />

        </xs:restriction>

      </xs:simpleType>

      <xs:complexType name="ArrayOfGlobeGraphicsElementProps">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="GlobeGraphicsElementProps" type="GlobeGraphicsElementProperties" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="GlobeGraphicsLayer">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="UseAssocLayer" type="xs:boolean" />

          <xs:element minOccurs="0" name="AssocLayerName" type="xs:string" />

          <xs:element name="Hide" type="xs:boolean" />

          <xs:element name="Elements" type="ArrayOfGraphicElement" />

          <xs:element name="ElementProperties" type="ArrayOfGlobeGraphicsElementProps" />

        </xs:sequence>

      </xs:complexType>

      <xs:simpleType name="esriGlobeGraphicsOrientation">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriGlobeGraphicsOrientationDefault" />

          <xs:enumeration value="esriGlobeGraphicsOrientationBillboard" />

          <xs:enumeration value="esriGlobeGraphicsOrientationLocal" />

        </xs:restriction>

      </xs:simpleType>

      <xs:complexType name="GlobeGraphicsElementProperties">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="ElementSelected" type="xs:boolean" />

          <xs:element name="ElementIlluminate" type="xs:boolean" />

          <xs:element name="ElementFixedSize" type="xs:boolean" />

          <xs:element name="ElementOrientation" type="esriGlobeGraphicsOrientation" />

          <xs:element name="ElementRasterized" type="xs:boolean" />

          <xs:element name="ElementDraped" type="xs:boolean" />

          <xs:element name="ElementDrapeMaxRes" type="xs:boolean" />

          <xs:element name="ElementZOffset" type="xs:double" />

          <xs:element name="ElementDensDist" type="xs:double" />

          <xs:element name="ElementCallout" type="xs:boolean" />

          <xs:element name="ElementCallOffX" type="xs:double" />

          <xs:element name="ElementCallOffY" type="xs:double" />

          <xs:element name="ElementCallOffZ" type="xs:double" />

          <xs:element name="ElementCallLineR" type="xs:unsignedByte" />

          <xs:element name="ElementCallLineG" type="xs:unsignedByte" />

          <xs:element name="ElementCallLineB" type="xs:unsignedByte" />

          <xs:element name="ElementCallLineA" type="xs:unsignedByte" />

          <xs:element name="ElementCallWidth" type="xs:double" />

          <xs:element name="ElementTransformed" type="xs:boolean" />

          <xs:element name="ElementTransX" type="xs:double" />

          <xs:element name="ElementTransY" type="xs:double" />

          <xs:element name="ElementTransZ" type="xs:double" />

          <xs:element name="ElementScaleX" type="xs:double" />

          <xs:element name="ElementScaleY" type="xs:double" />

          <xs:element name="ElementScaleZ" type="xs:double" />

          <xs:element name="ElementRotateX" type="xs:double" />

          <xs:element name="ElementRotateY" type="xs:double" />

          <xs:element name="ElementRotateZ" type="xs:double" />

          <xs:element name="ElementGroup" type="xs:boolean" />

          <xs:element name="ElementDrapeDone" type="xs:boolean" />

          <xs:element name="ElementCallPosX" type="xs:double" />

          <xs:element name="ElementCallPosY" type="xs:double" />

          <xs:element name="ElementCallPosZ" type="xs:double" />

          <xs:element name="ElementImmediate" type="xs:boolean" />

          <xs:element name="ElementPosX" type="xs:double" />

          <xs:element name="ElementPosY" type="xs:double" />

          <xs:element name="ElementPosZ" type="xs:double" />

          <xs:element name="ElementPosLon" type="xs:double" />

          <xs:element name="ElementPosLat" type="xs:double" />

          <xs:element name="ElementPosAlt" type="xs:double" />

          <xs:element name="ElementHasOwnScale" type="xs:boolean" />

          <xs:element name="ElementOwnScale" type="xs:double" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="AreaPatch">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Patch" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="ArrayOfGraphicElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="GraphicElement" type="GraphicElement" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="LegendClass">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" name="Symbol" type="Symbol" />

          <xs:element name="Label" type="xs:string" />

          <xs:element name="Description" type="xs:string" />

          <xs:element minOccurs="0" name="LegendClassFormat" type="LegendClassFormat" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="LegendClassFormat">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" name="LabelSymbol" type="Symbol" />

          <xs:element minOccurs="0" name="DescriptionSymbol" type="Symbol" />

          <xs:element minOccurs="0" name="LinePatch" type="LinePatch" />

          <xs:element minOccurs="0" name="AreaPatch" type="AreaPatch" />

          <xs:element name="PatchWidth" type="xs:double" />

          <xs:element name="PatchHeight" type="xs:double" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="LinePatch">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Patch" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Shadow" abstract="true">

        <xs:annotation>

          <xs:documentation>Frame drop shadows.</xs:documentation>

        </xs:annotation>

        <xs:sequence />

      </xs:complexType>

      <xs:complexType name="Background" abstract="true">

        <xs:annotation>

          <xs:documentation>Frame Background.</xs:documentation>

        </xs:annotation>

        <xs:sequence />

      </xs:complexType>

      <xs:complexType name="SymbolBackground">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Background">

            <xs:sequence>

              <xs:element name="HorizontalGap" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Horizontal offset or gap between the decoration and the subject in points.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="CornerRounding" type="xs:short" />

              <xs:element name="VerticalGap" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Vertical offset or gap between the decoration and the subject in points.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Symbol" type="FillSymbol">

                <xs:annotation>

                  <xs:documentation>Symbol used to draw the background.</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Border" abstract="true">

        <xs:annotation>

          <xs:documentation>Frame border used by this element.</xs:documentation>

        </xs:annotation>

        <xs:sequence />

      </xs:complexType>

      <xs:complexType name="SymbolBorder">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Border">

            <xs:sequence>

              <xs:element name="HorizontalGap" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Horizontal offset or gap between the decoration and the subject in points.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="CornerRounding" type="xs:short" />

              <xs:element name="VerticalGap" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Vertical offset or gap between the decoration and the subject in points.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Symbol" type="LineSymbol">

                <xs:annotation>

                  <xs:documentation>Symbol used to draw the border.</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="SymbolShadow">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Shadow">

            <xs:sequence>

              <xs:element minOccurs="0" name="Symbol" type="LineSymbol">

                <xs:annotation>

                  <xs:documentation>Symbol used to draw the shadow.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="CornerRounding" type="xs:short" />

              <xs:element name="HorizontalOffset" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Horizontal offset or gap between the decoration and the subject in points.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="VerticalOffset" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Vertical offset or gap between the decoration and the subject in points.</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Element" abstract="true">

        <xs:annotation>

          <xs:documentation>Element.</xs:documentation>

        </xs:annotation>

        <xs:sequence />

      </xs:complexType>

      <xs:complexType name="GraphicElement" abstract="true">

        <xs:annotation>

          <xs:documentation>Graphic Element Obejct.</xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Element">

            <xs:sequence />

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="LineElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

              <xs:element name="Line" type="Geometry">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry, in this case it is a PolyLine.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

              <xs:element minOccurs="0" name="FixedAspectRatio" type="xs:boolean" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="CircleElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element name="Rectangle" type="Geometry">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry, in this case it is a Polygon or an Envelope.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

              <xs:element minOccurs="0" name="FixedAspectRatio" type="xs:boolean" />

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="EllipseElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element name="Rectangle" type="Geometry">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry, in this case it is a Polygon or an Envelope.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

              <xs:element minOccurs="0" name="FixedAspectRatio" type="xs:boolean" />

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="GroupElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Element">

            <xs:sequence>

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element name="Elements" type="ArrayOfGraphicElement" />

              <xs:element minOccurs="0" name="Rectangle" type="Geometry">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

              <xs:element minOccurs="0" name="FixedAspectRatio" type="xs:boolean" />

              <xs:element minOccurs="0" name="Border" type="Border" />

              <xs:element minOccurs="0" name="Background" type="Background" />

              <xs:element minOccurs="0" name="DraftMode" type="xs:boolean" />

              <xs:element minOccurs="0" name="Shadow" type="Shadow" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="MarkerElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

              <xs:element name="Point" type="Point">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry, in this case it is a Point.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="ParagraphTextElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Text" type="xs:string" />

              <xs:element minOccurs="0" name="Scale" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Should have been boolean type. Indicates if the text scales with the map.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

              <xs:element name="TextGeometry" type="Geometry">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry, in this case it is a .</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

              <xs:element minOccurs="0" name="FrameBorder" type="Border">

                <xs:annotation>

                  <xs:documentation>Frame border used by this element.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FrameBackground" type="Background">

                <xs:annotation>

                  <xs:documentation>Frame background used by this element.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FrameShadow" type="Shadow">

                <xs:annotation>

                  <xs:documentation>"Frame shadow used by this element.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="ColumnGap" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Gap between columns in points.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="ColumnCount" type="xs:int">

                <xs:annotation>

                  <xs:documentation>Number of columns.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Margin" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Value for the margin.</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PolygonElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

              <xs:element name="Polygon" type="Geometry">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry, in this case it is a Polygon.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

              <xs:element minOccurs="0" name="FixedAspectRatio" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>Indicates if the bounds has a fixed aspect ratio.</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="RectangleElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element name="Rectangle" type="Geometry">

                <xs:annotation>

                  <xs:documentation>Shape of the element as a geometry, in this case it is a Polygon.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

              <xs:element minOccurs="0" name="FixedAspectRatio" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>Indicates if the bounds has a fixed aspect ratio.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="TextElement">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="GraphicElement">

            <xs:sequence>

              <xs:element minOccurs="0" name="Name" type="xs:string" />

              <xs:element minOccurs="0" name="Type" type="xs:string" />

              <xs:element minOccurs="0" name="AutoTransform" type="xs:boolean" />

              <xs:element minOccurs="0" name="ReferenceScale" type="xs:double" />

              <xs:element minOccurs="0" name="Text" type="xs:string" />

              <xs:element minOccurs="0" name="Scale" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>Indicates if the text scales with the map.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Symbol" type="Symbol" />

              <xs:element name="TextGeometry" type="Geometry" />

              <xs:element minOccurs="0" name="Locked" type="xs:boolean" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Patch">

        <xs:annotation>

          <xs:documentation>legend patch.</xs:documentation>

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" name="Name" type="xs:string" />

          <xs:element minOccurs="0" name="PreserveAspectRatio" type="xs:boolean" />

          <xs:element minOccurs="0" name="Geometry" type="Geometry">

            <xs:annotation>

              <xs:documentation>Patch geometry sized to fit the specified bounds.</xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfLegendClass">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="LegendClass" type="LegendClass" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="LegendGroup">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="Visible" type="xs:boolean" />

          <xs:element name="Editable" type="xs:boolean" />

          <xs:element name="Heading" type="xs:string" />

          <xs:element minOccurs="0" name="LegendClasses" type="ArrayOfLegendClass" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfLegendGroup">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="LegendGroup" type="LegendGroup" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="CacheControlInfo">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="ClientCachingAllowed" type="xs:boolean" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="Color" abstract="true">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" name="UseWindowsDithering" type="xs:boolean" />

          <xs:element minOccurs="0" name="AlphaValue" type="xs:unsignedByte">

            <xs:annotation>

              <xs:documentation>The Alpha Blending value. (0 for transparent, 255 for opaque).</xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="GrayColor">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

                  <xs:documentation>Indicates if the color is a spot color.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="SpotDescription" type="xs:string" />

              <xs:element name="SpotPercent" type="xs:short">

                <xs:annotation>

                  <xs:documentation>The saturation of the spot plate.</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="HlsColor">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence />

      </xs:complexType>

      <xs:simpleType name="esriSimpleFillStyle">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriSLSSolid" />

          <xs:enumeration value="esriSLSDash" />

          <xs:enumeration value="esriSLSDot" />

          <xs:enumeration value="esriSLSDashDot" />

          <xs:enumeration value="esriSLSDashDotDot" />

          <xs:enumeration value="esriSLSNull" />

          <xs:enumeration value="esriSLSInsideFrame" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriSimpleMarkerStyle">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriMSNone" />

          <xs:enumeration value="esriMSHalo" />

        </xs:restriction>

      </xs:simpleType>

      <xs:complexType name="SimpleFillSymbol">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:simpleType name="esriFontStyle">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="normal" />

          <xs:enumeration value="italic" />

          <xs:enumeration value="oblique" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriFontWeight">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="normal" />

          <xs:enumeration value="bold" />

          <xs:enumeration value="bolder" />

          <xs:enumeration value="lighter" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriFontDecoration">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="none" />

          <xs:enumeration value="underline" />

          <xs:enumeration value="line-through" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriSimpleTextVerticalAlignment">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="top" />

          <xs:enumeration value="middle" />

          <xs:enumeration value="baseline" />

          <xs:enumeration value="bottom" />

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriSimpleTextHorizontalAlignment">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="left" />

          <xs:enumeration value="center" />

          <xs:enumeration value="right" />

          <xs:enumeration value="justified" />

        </xs:restriction>

      </xs:simpleType>

      <xs:complexType name="SimpleTextSymbol">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Symbol">

            <xs:sequence>

              <xs:element minOccurs="0" name="Color" type="Color">

                <xs:annotation>

                  <xs:documentation>Text color."</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="BackgroundColor" type="Color" />

              <xs:element minOccurs="0" name="OutlineColor" type="Color" />

              <xs:element minOccurs="0" name="VerticalAlignment" type="esriSimpleTextVerticalAlignment">

                <xs:annotation>

                  <xs:documentation>Vertical alignment style.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="HorizontalAlignment" type="esriSimpleTextHorizontalAlignment">

                <xs:annotation>

                  <xs:documentation>Horizontal alignment style.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" default="false" name="RightToLeft" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>Indicates if the text is drawn from right to left.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" default="0.0" name="Angle" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Text baseline angle.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" default="0.0" name="XOffset" type="xs:double" />

              <xs:element minOccurs="0" default="0.0" name="YOffset" type="xs:double" />

              <xs:element minOccurs="0" name="Size" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Text size.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontFamilyName" type="xs:string">

                <xs:annotation>

                  <xs:documentation>The name of the font family.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontStyle" type="esriFontStyle">

                <xs:annotation>

                  <xs:documentation>The font style.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontWeight" type="esriFontWeight">

                <xs:annotation>

                  <xs:documentation>

                The boldness or weight of the font.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontDecoration" type="esriFontDecoration" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="TextSymbol">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Symbol">

            <xs:sequence>

              <xs:element minOccurs="0" name="Color" type="Color">

                <xs:annotation>

                  <xs:documentation>Text color."</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="BreakCharIndex" type="xs:int">

                <xs:annotation>

                  <xs:documentation>Character to be interpreted as text line end.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="VerticalAlignment" type="esriTextVerticalAlignment">

                <xs:annotation>

                  <xs:documentation>Vertical alignment style.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="HorizontalAlignment" type="esriTextHorizontalAlignment">

                <xs:annotation>

                  <xs:documentation>Horizontal alignment style.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="Clip" type="xs:boolean" />

              <xs:element name="RightToLeft" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>Indicates if the text is drawn from right to left.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="Angle" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Text baseline angle.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="XOffset" type="xs:double" />

              <xs:element name="YOffset" type="xs:double" />

              <xs:element minOccurs="0" name="ShadowColor" type="Color" />

              <xs:element name="ShadowXOffset" type="xs:double" />

              <xs:element name="ShadowYOffset" type="xs:double" />

              <xs:element name="TextPosition" type="esriTextPosition">

                <xs:annotation>

                  <xs:documentation>The text position.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="TextCase" type="esriTextCase">

                <xs:annotation>

                  <xs:documentation>The text case.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="CharacterSpacing" type="xs:double" />

              <xs:element default="100.0" name="CharacterWidth" type="xs:double" />

              <xs:element default="100.0" name="WordSpacing" type="xs:double" />

              <xs:element name="Kerning" type="xs:boolean" />

              <xs:element name="Leading" type="xs:double" />

              <xs:element name="TextDirection" type="esriTextDirection">

                <xs:annotation>

                  <xs:documentation>The text direction.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="FlipAngle" type="xs:double" />

              <xs:element name="TypeSetting" type="xs:boolean" />

              <xs:element minOccurs="0" name="TextPathClass" type="xs:string">

                <xs:annotation>

                  <xs:documentation>Path of text baseline.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FillSymbol" type="Symbol" />

              <xs:element name="Text" type="xs:string">

                <xs:annotation>

                  <xs:documentation>Text to draw.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="Size" type="xs:double">

                <xs:annotation>

                  <xs:documentation>Text size.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="MaskStyle" type="esriMaskStyle" />

              <xs:element name="MaskSize" type="xs:double" />

              <xs:element minOccurs="0" name="MaskSymbol" type="Symbol" />

              <xs:element minOccurs="0" name="FontName" type="xs:string">

                <xs:annotation>

                  <xs:documentation>The name of the font family.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontItalic" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>Indicates whether the font is italicized.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontUnderline" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>Indicates whether the font is underlined.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontStrikethrough" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>

                Indicates whether the font is strikethrough.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontWeight" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                The boldness or weight of the font.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontCharset" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                The character set used in the font, such as ANSI_CHARSET, DEFAULT_CHARSET, or SYMBOL_CHARSET.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontSizeHi" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                Point size of the font expressed in a 64-bit CY variable whose upper 32-bits contains the integer point size.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontSizeLo" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                Point size of the font expressed in a 64-bit CY variable whose lower 32-bits contains the fractional point size.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="TextParserClass" type="xs:string">

                <xs:annotation>

                  <xs:documentation>Text Parser Class ID</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="CharacterMarkerSymbol">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="CartographicMarkerSymbol">

            <xs:sequence>

              <xs:element name="CharacterIndex" type="xs:int" />

              <xs:element minOccurs="0" name="FontName" type="xs:string">

                <xs:annotation>

                  <xs:documentation>

                The name of the font family.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontItalic" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>

                Indicates whether the font is italicized.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontUnderline" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>

                Indicates whether the font is underlined.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontStrikethrough" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>

                Indicates whether the font is strikethrough.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontWeight" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                The boldness or weight of the font.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontCharset" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                The character set used in the font, such as ANSI_CHARSET, DEFAULT_CHARSET, or SYMBOL_CHARSET.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontSizeHi" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                Point size of the font expressed in a 64-bit CY variable whose upper 32-bits contains the integer point size.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FontSizeLo" type="xs:int">

                <xs:annotation>

                  <xs:documentation>

                Point size of the font expressed in a 64-bit CY variable whose lower 32-bits contains the fractional point size.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PictureMarkerSymbol">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="CartographicMarkerSymbol">

            <xs:sequence>

              <xs:element minOccurs="0" name="BgColor" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Background color of the picture for 1 bit images.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="BitmapTransColor" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Color within bitmap indicating transparency.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Picture" type="xs:base64Binary" />

              <xs:element minOccurs="0" name="PictureUri" type="xs:string" />

              <xs:element minOccurs="0" name="Width" type="xs:double" />

              <xs:element minOccurs="0" name="FgColor" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Foreground color of the picture for 1 bit images.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Swap1BitColor" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>

                Indicates if foreground and background colors are swapped on 1 Bit Images Only.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PictureFillSymbol">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="FillSymbol">

            <xs:sequence>

              <xs:element minOccurs="0" name="Picture" type="xs:base64Binary" />

              <xs:element minOccurs="0" name="PictureUri" type="xs:string" />

              <xs:element minOccurs="0" name="Width" type="xs:double" />

              <xs:element minOccurs="0" name="Height" type="xs:double" />

              <xs:element minOccurs="0" name="BgColor" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Fill background color.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="FgColor" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Fill foreground color.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="BitmapTransColor" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Color within bitmap indicating transparency.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="XSeparation" type="xs:double" />

              <xs:element minOccurs="0" name="YSeparation" type="xs:double" />

              <xs:element minOccurs="0" name="Swap1BitColor" type="xs:boolean">

                <xs:annotation>

                  <xs:documentation>

                Indicates if the foreground and background colors are swapped on 1 Bit Images Only.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Angle" type="xs:double" />

              <xs:element minOccurs="0" name="XOffset" type="xs:double" />

              <xs:element minOccurs="0" name="YOffset" type="xs:double" />

              <xs:element minOccurs="0" default="1.0" name="XScale" type="xs:double" />

              <xs:element minOccurs="0" default="1.0" name="YScale" type="xs:double" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="FillSymbol" abstract="true">

        <xs:annotation>

          <xs:documentation>

        Fill Sybmol Properties.

      </xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Symbol">

            <xs:sequence>

              <xs:element minOccurs="0" name="Color" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Fill color.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Outline" type="LineSymbol">

                <xs:annotation>

                  <xs:documentation>

                Line symbol of fill outline.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="LineSymbol" abstract="true">

        <xs:annotation>

          <xs:documentation>

        Line Symbol properties.

      </xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Symbol">

            <xs:sequence>

              <xs:element minOccurs="0" name="Color" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Line symbol color.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="Width" type="xs:double">

                <xs:annotation>

                  <xs:documentation>

                Line symbol width.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="MarkerSymbol" abstract="true">

        <xs:annotation>

          <xs:documentation>

        Marker Symbol Properties.

      </xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Symbol">

            <xs:sequence>

              <xs:element name="Angle" type="xs:double">

                <xs:annotation>

                  <xs:documentation>

                Marker symbol angle.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element minOccurs="0" name="Color" type="Color">

                <xs:annotation>

                  <xs:documentation>

                Marker symbol color.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="Size" type="xs:double">

                <xs:annotation>

                  <xs:documentation>

                Marker symbol size.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="XOffset" type="xs:double">

                <xs:annotation>

                  <xs:documentation>

                Symbol X-axis offset from point location.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="YOffset" type="xs:double">

                <xs:annotation>

                  <xs:documentation>

                Symbol Y-axis offset from point location.

              </xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="CartographicMarkerSymbol" abstract="true">

        <xs:annotation>

          <xs:documentation>

        Cartographic marker symbol properties.

      </xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="MarkerSymbol">

            <xs:sequence>

              <xs:element default="1.0" name="XScale" type="xs:double" />

              <xs:element default="1.0" name="YScale" type="xs:double" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="XMLBinarySymbol">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="FillSymbol">

            <xs:sequence>

              <xs:element name="Data" type="XMLPersistedObject" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PropertySetProperty">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="Key" type="xs:string" />

          <xs:element minOccurs="0" name="Value" nillable="true" type="xs:anyType" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfPropertySetProperty">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="PropertySetProperty" type="PropertySetProperty" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="PropertySet">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="PropertyArray" type="ArrayOfPropertySetProperty" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="XMLPersistedObject">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element name="Bytes" type="xs:base64Binary" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfInt">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="Int" type="xs:int" />

        </xs:sequence>

      </xs:complexType>

      <xs:simpleType name="esriGeometryType">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" name="WKT" type="xs:string" />

          <xs:element minOccurs="0" name="XOrigin" type="xs:double" />

          <xs:element minOccurs="0" name="YOrigin" type="xs:double" />

          <xs:element minOccurs="0" name="XYScale" type="xs:double" />

          <xs:element minOccurs="0" name="ZOrigin" type="xs:double" />

          <xs:element minOccurs="0" name="ZScale" type="xs:double" />

          <xs:element minOccurs="0" name="MOrigin" type="xs:double" />

          <xs:element minOccurs="0" name="MScale" type="xs:double" />

          <xs:element minOccurs="0" name="XYTolerance" type="xs:double" />

          <xs:element minOccurs="0" name="ZTolerance" type="xs:double" />

          <xs:element minOccurs="0" name="MTolerance" type="xs:double" />

          <xs:element minOccurs="0" name="HighPrecision" type="xs:boolean" />

          <xs:element minOccurs="0" name="LeftLongitude" type="xs:double" />

          <xs:element minOccurs="0" name="WKID" type="xs:int" />

          <xs:element minOccurs="0" name="VCSWKID" type="xs:int" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ProjectedCoordinateSystem">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="SpatialReference" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="GeographicCoordinateSystem">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="SpatialReference" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="UnknownCoordinateSystem">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="SpatialReference" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Geometry">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

      </xs:complexType>

      <xs:complexType name="Curve" abstract="true">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Geometry" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Segment" abstract="true">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Curve" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Envelope" abstract="true">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Geometry" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="EnvelopeN">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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 minOccurs="0" name="ZMin" type="xs:double" />

              <xs:element minOccurs="0" name="ZMax" type="xs:double" />

              <xs:element minOccurs="0" name="MMin" type="xs:double" />

              <xs:element minOccurs="0" name="MMax" type="xs:double" />

              <xs:element minOccurs="0" name="SpatialReference" type="SpatialReference" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="EnvelopeB">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Geometry" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PointN">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Point">

            <xs:sequence>

              <xs:element name="X" type="xs:double" />

              <xs:element name="Y" type="xs:double" />

              <xs:element minOccurs="0" name="M" type="xs:double" />

              <xs:element minOccurs="0" name="Z" type="xs:double" />

              <xs:element minOccurs="0" name="ID" type="xs:int" />

              <xs:element minOccurs="0" name="SpatialReference" type="SpatialReference" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PointB">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Geometry" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="MultipointB">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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 minOccurs="0" name="Extent" type="Envelope" />

              <xs:element minOccurs="0" name="PointArray" type="ArrayOfPoint" />

              <xs:element minOccurs="0" name="SpatialReference" type="SpatialReference" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Line">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Segment" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="EllipticArc">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Segment">

            <xs:sequence>

              <xs:element name="CenterPoint" type="Point" />

              <xs:element minOccurs="0" name="FromAngle" type="xs:double" />

              <xs:element minOccurs="0" name="ToAngle" type="xs:double" />

              <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Curve">

            <xs:sequence>

              <xs:element minOccurs="0" name="PointArray" type="ArrayOfPoint" />

              <xs:element minOccurs="0" name="SegmentArray" type="ArrayOfSegment" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Ring">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Path" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="Polygon" abstract="true">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Polycurve" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PolygonN">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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 minOccurs="0" name="Extent" type="Envelope" />

              <xs:element name="RingArray" type="ArrayOfRing" />

              <xs:element minOccurs="0" name="SpatialReference" type="SpatialReference" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PolygonB">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Polycurve" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PolylineN">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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 minOccurs="0" name="Extent" type="Envelope" />

              <xs:element name="PathArray" type="ArrayOfPath" />

              <xs:element minOccurs="0" name="SpatialReference" type="SpatialReference" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="PolylineB">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="Point" type="Point" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfPath">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="Path" type="Path" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfRing">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="Ring" type="Ring" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfSegment">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="Segment" type="Segment" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="MultiPatch" abstract="true">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Geometry" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="MultiPatchB">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <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 />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="SurfacePatch" type="Geometry" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="TriangleFan">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Geometry">

            <xs:sequence>

              <xs:element minOccurs="0" name="PointArray" type="ArrayOfPoint" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="TriangleStrip">

        <xs:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Geometry">

            <xs:sequence>

              <xs:element minOccurs="0" name="PointArray" type="ArrayOfPoint" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:simpleType name="esriFieldType">

        <xs:annotation>

          <xs:documentation>Field Types.</xs:documentation>

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriFieldTypeInteger">

            <xs:annotation>

              <xs:documentation>Long Integer.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeSmallInteger">

            <xs:annotation>

              <xs:documentation>Integer.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeDouble">

            <xs:annotation>

              <xs:documentation>Double-precision floating-point number.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeSingle">

            <xs:annotation>

              <xs:documentation>Single-precision floating-point number.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeString">

            <xs:annotation>

              <xs:documentation>Character string.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeDate">

            <xs:annotation>

              <xs:documentation>Date.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeGeometry">

            <xs:annotation>

              <xs:documentation>Geometry.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeOID">

            <xs:annotation>

              <xs:documentation>Long Integer representing an object identifier.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeBlob">

            <xs:annotation>

              <xs:documentation>Binary Large Object.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeGlobalID">

            <xs:annotation>

              <xs:documentation>ESRI Global ID.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeRaster">

            <xs:annotation>

              <xs:documentation>Raster.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeGUID">

            <xs:annotation>

              <xs:documentation>Globally Unique Identifier.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriFieldTypeXML">

            <xs:annotation>

              <xs:documentation>XML Document</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

        </xs:restriction>

      </xs:simpleType>

      <xs:complexType name="GeometryDef">

        <xs:annotation>

          <xs:documentation>ESRI Geometry Definition Object.</xs:documentation>

        </xs:annotation>

        <xs:sequence>

          <xs:element name="AvgNumPoints" type="xs:int">

            <xs:annotation>

              <xs:documentation>Estimated average number of points per feature.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="GeometryType" type="esriGeometryType">

            <xs:annotation>

              <xs:documentation>The enumerated geometry type.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="HasM" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>Indicates if the feature class has measure (M) values.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="HasZ" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>Indicates if the featureClass has Z values.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="SpatialReference" type="SpatialReference">

            <xs:annotation>

              <xs:documentation>The spatial reference for the dataset.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="GridSize0" type="xs:double" />

          <xs:element minOccurs="0" name="GridSize1" type="xs:double" />

          <xs:element minOccurs="0" name="GridSize2" type="xs:double" />

        </xs:sequence>

      </xs:complexType>

      <xs:simpleType name="esriMergePolicyType">

        <xs:annotation>

          <xs:documentation>Merge policy types.</xs:documentation>

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriMPTSumValues">

            <xs:annotation>

              <xs:documentation>Sum the values merge policy.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriMPTAreaWeighted">

            <xs:annotation>

              <xs:documentation>Area weighted merge policy.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriMPTDefaultValue">

            <xs:annotation>

              <xs:documentation>Default value merge policy.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

        </xs:restriction>

      </xs:simpleType>

      <xs:simpleType name="esriSplitPolicyType">

        <xs:annotation>

          <xs:documentation>Split policy types.</xs:documentation>

        </xs:annotation>

        <xs:restriction base="xs:string">

          <xs:enumeration value="esriSPTGeometryRatio">

            <xs:annotation>

              <xs:documentation>Geometry-ratioed split policy.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriSPTDuplicate">

            <xs:annotation>

              <xs:documentation>Duplicate split policy.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

          <xs:enumeration value="esriSPTDefaultValue">

            <xs:annotation>

              <xs:documentation>Default value split policy.</xs:documentation>

            </xs:annotation>

          </xs:enumeration>

        </xs:restriction>

      </xs:simpleType>

      <xs:complexType name="Domain" abstract="true">

        <xs:annotation>

          <xs:documentation>

        Domain Properties control and their merge split policies control.

      </xs:documentation>

        </xs:annotation>

        <xs:sequence>

          <xs:element name="DomainName" type="xs:string">

            <xs:annotation>

              <xs:documentation>

            The ID of the domain.

          </xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="FieldType" type="esriFieldType">

            <xs:annotation>

              <xs:documentation>The field type of the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="MergePolicy" type="esriMergePolicyType">

            <xs:annotation>

              <xs:documentation>The merge policy.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="SplitPolicy" type="esriSplitPolicyType">

            <xs:annotation>

              <xs:documentation>The split policy.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="Description" type="xs:string">

            <xs:annotation>

              <xs:documentation>The description of the domain.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="Owner" type="xs:string">

            <xs:annotation>

              <xs:documentation>The owner of the domain.</xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="Field">

        <xs:annotation>

          <xs:documentation>ESRI Field Object.</xs:documentation>

        </xs:annotation>

        <xs:sequence>

          <xs:element name="Name" type="xs:string">

            <xs:annotation>

              <xs:documentation>The name of the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="Type" type="esriFieldType">

            <xs:annotation>

              <xs:documentation>The type of the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="IsNullable" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>Indicates if the field can contain null values.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="Length" type="xs:int">

            <xs:annotation>

              <xs:documentation>The maximum length, in bytes, for values described by the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="Precision" type="xs:int">

            <xs:annotation>

              <xs:documentation>The precision for field values.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element name="Scale" type="xs:int">

            <xs:annotation>

              <xs:documentation>The scale for field values.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="Required" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>Indicates if the field is required.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" default="true" name="Editable" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>Indicates if the field is editable.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="DomainFixed" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>Indicates if the field's domain is fixed.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="GeometryDef" type="GeometryDef">

            <xs:annotation>

              <xs:documentation>The geometry definition for the field if IsGeometry is TRUE.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="AliasName" type="xs:string">

            <xs:annotation>

              <xs:documentation>The alias name of the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="ModelName" type="xs:string">

            <xs:annotation>

              <xs:documentation>The model name of the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="DefaultValue" type="xs:anyType">

            <xs:annotation>

              <xs:documentation>The default value of the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="Domain" type="Domain">

            <xs:annotation>

              <xs:documentation>The default domain of the field.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="RasterDef" type="RasterDef">

            <xs:annotation>

              <xs:documentation>The raster column definition.</xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="ArrayOfField">

        <xs:annotation>

          <xs:documentation>ESRI FieldArray object.</xs:documentation>

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="Field" type="Field" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="Fields">

        <xs:annotation>

          <xs:documentation>ESRI Fields Object.</xs:documentation>

        </xs:annotation>

        <xs:sequence>

          <xs:element name="FieldArray" type="ArrayOfField" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="RangeDomain">

        <xs:annotation>

          <xs:documentation>ESRI Range Domain object.</xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Domain">

            <xs:sequence>

              <xs:element name="MaxValue" type="xs:anyType">

                <xs:annotation>

                  <xs:documentation>The maximum value for the associated attribute.</xs:documentation>

                </xs:annotation>

              </xs:element>

              <xs:element name="MinValue" type="xs:anyType">

                <xs:annotation>

                  <xs:documentation>The minimum value for the associated attribute.</xs:documentation>

                </xs:annotation>

              </xs:element>

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="CodedValue">

        <xs:annotation>

          <xs:documentation>

        ESRI Attribute set constraint object.

      </xs:documentation>

        </xs:annotation>

        <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:annotation>

          <xs:documentation />

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" maxOccurs="unbounded" name="CodedValue" type="CodedValue" />

        </xs:sequence>

      </xs:complexType>

      <xs:complexType name="CodedValueDomain">

        <xs:annotation>

          <xs:documentation>ESRI Attribute set constraint object.</xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="Domain">

            <xs:sequence>

              <xs:element name="CodedValues" type="ArrayOfCodedValue" />

            </xs:sequence>

          </xs:extension>

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="BitMaskCodedValueDomain">

        <xs:annotation>

          <xs:documentation>ESRI Attribute bitmask constraint object.</xs:documentation>

        </xs:annotation>

        <xs:complexContent mixed="false">

          <xs:extension base="CodedValueDomain" />

        </xs:complexContent>

      </xs:complexType>

      <xs:complexType name="RasterDef">

        <xs:annotation>

          <xs:documentation>Raster Column Definition Class.</xs:documentation>

        </xs:annotation>

        <xs:sequence>

          <xs:element minOccurs="0" name="Description" type="xs:string">

            <xs:annotation>

              <xs:documentation>The raster column description.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="IsByRef" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>

            Indicates if the Raster column value is to be managed by GeoDatabase.

          </xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="SpatialReference" type="SpatialReference">

            <xs:annotation>

              <xs:documentation>The SpatialReference of the raster.</xs:documentation>

            </xs:annotation>

          </xs:element>

          <xs:element minOccurs="0" name="IsByFunction" type="xs:boolean">

            <xs:annotation>

              <xs:documentation>

            Indicates if the Raster column value is of type function raster dataset.

          </xs:documentation>

            </xs:annotation>

          </xs:element>

        </xs:sequence>

      </xs:complexType>

    </xs:schema>

  </types>

  <message name="GetTexturesExIn">

    <part name="parameters" element="e:GetTexturesEx" />

  </message>

  <message name="GetTexturesExOut">

    <part name="parameters" element="e:GetTexturesExResponse" />

  </message>

  <message name="GetTexturesIn">

    <part name="parameters" element="e:GetTextures" />

  </message>

  <message name="GetTexturesOut">

    <part name="parameters" element="e:GetTexturesResponse" />

  </message>

  <message name="GetTileIn">

    <part name="parameters" element="e:GetTile" />

  </message>

  <message name="GetTileOut">

    <part name="parameters" element="e:GetTileResponse" />

  </message>

  <message name="GetConfigurationIn">

    <part name="parameters" element="e:GetConfiguration" />

  </message>

  <message name="GetConfigurationOut">

    <part name="parameters" element="e:GetConfigurationResponse" />

  </message>

  <message name="GetCacheControlInfoIn">

    <part name="parameters" element="e:GetCacheControlInfo" />

  </message>

  <message name="GetCacheControlInfoOut">

    <part name="parameters" element="e:GetCacheControlInfoResponse" />

  </message>

  <message name="GetVirtualCacheDirectoryIn">

    <part name="parameters" element="e:GetVirtualCacheDirectory" />

  </message>

  <message name="GetVirtualCacheDirectoryOut">

    <part name="parameters" element="e:GetVirtualCacheDirectoryResponse" />

  </message>

  <message name="GetMQTIn">

    <part name="parameters" element="e:GetMQT" />

  </message>

  <message name="GetMQTOut">

    <part name="parameters" element="e:GetMQTResponse" />

  </message>

  <message name="GetVersionIn">

    <part name="parameters" element="e:GetVersion" />

  </message>

  <message name="GetVersionOut">

    <part name="parameters" element="e:GetVersionResponse" />

  </message>

  <message name="GetLayerCountIn">

    <part name="parameters" element="e:GetLayerCount" />

  </message>

  <message name="GetLayerCountOut">

    <part name="parameters" element="e:GetLayerCountResponse" />

  </message>

  <message name="GetLayerInfosIn">

    <part name="parameters" element="e:GetLayerInfos" />

  </message>

  <message name="GetLayerInfosOut">

    <part name="parameters" element="e:GetLayerInfosResponse" />

  </message>

  <message name="GetConfigIn">

    <part name="parameters" element="e:GetConfig" />

  </message>

  <message name="GetConfigOut">

    <part name="parameters" element="e:GetConfigResponse" />

  </message>

  <message name="GetSymbolsIn">

    <part name="parameters" element="e:GetSymbols" />

  </message>

  <message name="GetSymbolsOut">

    <part name="parameters" element="e:GetSymbolsResponse" />

  </message>

  <message name="FindIn">

    <part name="parameters" element="e:Find" />

  </message>

  <message name="FindOut">

    <part name="parameters" element="e:FindResponse" />

  </message>

  <message name="GetLegendInfosIn">

    <part name="parameters" element="e:GetLegendInfos" />

  </message>

  <message name="GetLegendInfosOut">

    <part name="parameters" element="e:GetLegendInfosResponse" />

  </message>

  <message name="GetAnimationIn">

    <part name="parameters" element="e:GetAnimation" />

  </message>

  <message name="GetAnimationOut">

    <part name="parameters" element="e:GetAnimationResponse" />

  </message>

  <message name="IdentifyIn">

    <part name="parameters" element="e:Identify" />

  </message>

  <message name="IdentifyOut">

    <part name="parameters" element="e:IdentifyResponse" />

  </message>

  <portType name="GlobeServerPort">

    <documentation></documentation>

    <operation name="GetTexturesEx">

      <input message="e:GetTexturesExIn" />

      <output message="e:GetTexturesExOut" />

    </operation>

    <operation name="GetTextures">

      <input message="e:GetTexturesIn" />

      <output message="e:GetTexturesOut" />

    </operation>

    <operation name="GetTile">

      <input message="e:GetTileIn" />

      <output message="e:GetTileOut" />

    </operation>

    <operation name="GetConfiguration">

      <input message="e:GetConfigurationIn" />

      <output message="e:GetConfigurationOut" />

    </operation>

    <operation name="GetCacheControlInfo">

      <documentation>Gets the cache control information of a Globe Service.</documentation>

      <input message="e:GetCacheControlInfoIn" />

      <output message="e:GetCacheControlInfoOut" />

    </operation>

    <operation name="GetVirtualCacheDirectory">

      <input message="e:GetVirtualCacheDirectoryIn" />

      <output message="e:GetVirtualCacheDirectoryOut" />

    </operation>

    <operation name="GetMQT">

      <input message="e:GetMQTIn" />

      <output message="e:GetMQTOut" />

    </operation>

    <operation name="GetVersion">

      <input message="e:GetVersionIn" />

      <output message="e:GetVersionOut" />

    </operation>

    <operation name="GetLayerCount">

      <input message="e:GetLayerCountIn" />

      <output message="e:GetLayerCountOut" />

    </operation>

    <operation name="GetLayerInfos">

      <input message="e:GetLayerInfosIn" />

      <output message="e:GetLayerInfosOut" />

    </operation>

    <operation name="GetConfig">

      <input message="e:GetConfigIn" />

      <output message="e:GetConfigOut" />

    </operation>

    <operation name="GetSymbols">

      <input message="e:GetSymbolsIn" />

      <output message="e:GetSymbolsOut" />

    </operation>

    <operation name="Find">

      <input message="e:FindIn" />

      <output message="e:FindOut" />

    </operation>

    <operation name="GetLegendInfos">

      <input message="e:GetLegendInfosIn" />

      <output message="e:GetLegendInfosOut" />

    </operation>

    <operation name="GetAnimation">

      <input message="e:GetAnimationIn" />

      <output message="e:GetAnimationOut" />

    </operation>

    <operation name="Identify">

      <input message="e:IdentifyIn" />

      <output message="e:IdentifyOut" />

    </operation>

  </portType>

  <binding name="GlobeServerBinding" type="e:GlobeServerPort">

    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />

    <operation name="GetTexturesEx">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetTextures">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetTile">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetConfiguration">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetCacheControlInfo">

      <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="GetMQT">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetVersion">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetLayerCount">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetLayerInfos">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetConfig">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetSymbols">

      <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="GetLegendInfos">

      <soap:operation soapAction="" style="document" />

      <input>

        <soap:body use="literal" />

      </input>

      <output>

        <soap:body use="literal" />

      </output>

    </operation>

    <operation name="GetAnimation">

      <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>

  </binding>

  <service name="#NAME#">

    <port name="GlobeServerPort" binding="e:GlobeServerBinding">

      <soap:address location="#URL#" />

    </port>

  </service>

</definitions>