[teiid-commits] teiid SVN: r782 - in trunk/connectors/salesforce-api/src/main: resources and 1 other directory.

teiid-commits at lists.jboss.org teiid-commits at lists.jboss.org
Wed Apr 15 17:04:19 EDT 2009


Author: jdoyle
Date: 2009-04-15 17:04:19 -0400 (Wed, 15 Apr 2009)
New Revision: 782

Added:
   trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/AllowFieldTruncationHeader.java
   trunk/connectors/salesforce-api/src/main/resources/partner_v15.wsdl
Removed:
   trunk/connectors/salesforce-api/src/main/resources/partner_v14.wsdl
Modified:
   trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SforceServiceLocator.java
   trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SoapBindingStub.java
Log:
Updating to API 15.

Added: trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/AllowFieldTruncationHeader.java
===================================================================
--- trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/AllowFieldTruncationHeader.java	                        (rev 0)
+++ trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/AllowFieldTruncationHeader.java	2009-04-15 21:04:19 UTC (rev 782)
@@ -0,0 +1,115 @@
+/**
+ * AllowFieldTruncationHeader.java
+ *
+ * This file was auto-generated from WSDL
+ * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter.
+ */
+
+package com.sforce.soap.partner;
+
+public class AllowFieldTruncationHeader  implements java.io.Serializable {
+    private boolean allowFieldTruncation;
+
+    public AllowFieldTruncationHeader() {
+    }
+
+    public AllowFieldTruncationHeader(
+           boolean allowFieldTruncation) {
+           this.allowFieldTruncation = allowFieldTruncation;
+    }
+
+
+    /**
+     * Gets the allowFieldTruncation value for this AllowFieldTruncationHeader.
+     * 
+     * @return allowFieldTruncation
+     */
+    public boolean isAllowFieldTruncation() {
+        return allowFieldTruncation;
+    }
+
+
+    /**
+     * Sets the allowFieldTruncation value for this AllowFieldTruncationHeader.
+     * 
+     * @param allowFieldTruncation
+     */
+    public void setAllowFieldTruncation(boolean allowFieldTruncation) {
+        this.allowFieldTruncation = allowFieldTruncation;
+    }
+
+    private java.lang.Object __equalsCalc = null;
+    public synchronized boolean equals(java.lang.Object obj) {
+        if (!(obj instanceof AllowFieldTruncationHeader)) return false;
+        AllowFieldTruncationHeader other = (AllowFieldTruncationHeader) obj;
+        if (obj == null) return false;
+        if (this == obj) return true;
+        if (__equalsCalc != null) {
+            return (__equalsCalc == obj);
+        }
+        __equalsCalc = obj;
+        boolean _equals;
+        _equals = true && 
+            this.allowFieldTruncation == other.isAllowFieldTruncation();
+        __equalsCalc = null;
+        return _equals;
+    }
+
+    private boolean __hashCodeCalc = false;
+    public synchronized int hashCode() {
+        if (__hashCodeCalc) {
+            return 0;
+        }
+        __hashCodeCalc = true;
+        int _hashCode = 1;
+        _hashCode += (isAllowFieldTruncation() ? Boolean.TRUE : Boolean.FALSE).hashCode();
+        __hashCodeCalc = false;
+        return _hashCode;
+    }
+
+    // Type metadata
+    private static org.apache.axis.description.TypeDesc typeDesc =
+        new org.apache.axis.description.TypeDesc(AllowFieldTruncationHeader.class, true);
+
+    static {
+        typeDesc.setXmlType(new javax.xml.namespace.QName("urn:partner.soap.sforce.com", ">AllowFieldTruncationHeader"));
+        org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc();
+        elemField.setFieldName("allowFieldTruncation");
+        elemField.setXmlName(new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "allowFieldTruncation"));
+        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "boolean"));
+        elemField.setNillable(false);
+        typeDesc.addFieldDesc(elemField);
+    }
+
+    /**
+     * Return type metadata object
+     */
+    public static org.apache.axis.description.TypeDesc getTypeDesc() {
+        return typeDesc;
+    }
+
+    /**
+     * Get Custom Serializer
+     */
+    public static org.apache.axis.encoding.Serializer getSerializer(
+           java.lang.String mechType, 
+           java.lang.Class _javaType,  
+           javax.xml.namespace.QName _xmlType) {
+        return 
+          new  org.apache.axis.encoding.ser.BeanSerializer(
+            _javaType, _xmlType, typeDesc);
+    }
+
+    /**
+     * Get Custom Deserializer
+     */
+    public static org.apache.axis.encoding.Deserializer getDeserializer(
+           java.lang.String mechType, 
+           java.lang.Class _javaType,  
+           javax.xml.namespace.QName _xmlType) {
+        return 
+          new  org.apache.axis.encoding.ser.BeanDeserializer(
+            _javaType, _xmlType, typeDesc);
+    }
+
+}

Modified: trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SforceServiceLocator.java
===================================================================
--- trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SforceServiceLocator.java	2009-04-15 20:29:00 UTC (rev 781)
+++ trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SforceServiceLocator.java	2009-04-15 21:04:19 UTC (rev 782)
@@ -1,146 +1,146 @@
-/**
- * SforceServiceLocator.java
- *
- * This file was auto-generated from WSDL
- * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter.
- */
-
-package com.sforce.soap.partner;
-
-public class SforceServiceLocator extends org.apache.axis.client.Service implements com.sforce.soap.partner.SforceService {
-
-/**
- * Sforce SOAP API
- */
-
-    public SforceServiceLocator() {
-    }
-
-
-    public SforceServiceLocator(org.apache.axis.EngineConfiguration config) {
-        super(config);
-    }
-
-    public SforceServiceLocator(java.lang.String wsdlLoc, javax.xml.namespace.QName sName) throws javax.xml.rpc.ServiceException {
-        super(wsdlLoc, sName);
-    }
-
-    // Use to get a proxy class for Soap
-    private java.lang.String Soap_address = "https://www.salesforce.com/services/Soap/u/14.0";
-
-    public java.lang.String getSoapAddress() {
-        return Soap_address;
-    }
-
-    // The WSDD service name defaults to the port name.
-    private java.lang.String SoapWSDDServiceName = "Soap";
-
-    public java.lang.String getSoapWSDDServiceName() {
-        return SoapWSDDServiceName;
-    }
-
-    public void setSoapWSDDServiceName(java.lang.String name) {
-        SoapWSDDServiceName = name;
-    }
-
-    public com.sforce.soap.partner.Soap getSoap() throws javax.xml.rpc.ServiceException {
-       java.net.URL endpoint;
-        try {
-            endpoint = new java.net.URL(Soap_address);
-        }
-        catch (java.net.MalformedURLException e) {
-            throw new javax.xml.rpc.ServiceException(e);
-        }
-        return getSoap(endpoint);
-    }
-
-    public com.sforce.soap.partner.Soap getSoap(java.net.URL portAddress) throws javax.xml.rpc.ServiceException {
-        try {
-            com.sforce.soap.partner.SoapBindingStub _stub = new com.sforce.soap.partner.SoapBindingStub(portAddress, this);
-            _stub.setPortName(getSoapWSDDServiceName());
-            return _stub;
-        }
-        catch (org.apache.axis.AxisFault e) {
-            return null;
-        }
-    }
-
-    public void setSoapEndpointAddress(java.lang.String address) {
-        Soap_address = address;
-    }
-
-    /**
-     * For the given interface, get the stub implementation.
-     * If this service has no port for the given interface,
-     * then ServiceException is thrown.
-     */
-    public java.rmi.Remote getPort(Class serviceEndpointInterface) throws javax.xml.rpc.ServiceException {
-        try {
-            if (com.sforce.soap.partner.Soap.class.isAssignableFrom(serviceEndpointInterface)) {
-                com.sforce.soap.partner.SoapBindingStub _stub = new com.sforce.soap.partner.SoapBindingStub(new java.net.URL(Soap_address), this);
-                _stub.setPortName(getSoapWSDDServiceName());
-                return _stub;
-            }
-        }
-        catch (java.lang.Throwable t) {
-            throw new javax.xml.rpc.ServiceException(t);
-        }
-        throw new javax.xml.rpc.ServiceException("There is no stub implementation for the interface:  " + (serviceEndpointInterface == null ? "null" : serviceEndpointInterface.getName()));
-    }
-
-    /**
-     * For the given interface, get the stub implementation.
-     * If this service has no port for the given interface,
-     * then ServiceException is thrown.
-     */
-    public java.rmi.Remote getPort(javax.xml.namespace.QName portName, Class serviceEndpointInterface) throws javax.xml.rpc.ServiceException {
-        if (portName == null) {
-            return getPort(serviceEndpointInterface);
-        }
-        java.lang.String inputPortName = portName.getLocalPart();
-        if ("Soap".equals(inputPortName)) {
-            return getSoap();
-        }
-        else  {
-            java.rmi.Remote _stub = getPort(serviceEndpointInterface);
-            ((org.apache.axis.client.Stub) _stub).setPortName(portName);
-            return _stub;
-        }
-    }
-
-    public javax.xml.namespace.QName getServiceName() {
-        return new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "SforceService");
-    }
-
-    private java.util.HashSet ports = null;
-
-    public java.util.Iterator getPorts() {
-        if (ports == null) {
-            ports = new java.util.HashSet();
-            ports.add(new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "Soap"));
-        }
-        return ports.iterator();
-    }
-
-    /**
-    * Set the endpoint address for the specified port name.
-    */
-    public void setEndpointAddress(java.lang.String portName, java.lang.String address) throws javax.xml.rpc.ServiceException {
-        
-if ("Soap".equals(portName)) {
-            setSoapEndpointAddress(address);
-        }
-        else 
-{ // Unknown Port Name
-            throw new javax.xml.rpc.ServiceException(" Cannot set Endpoint Address for Unknown Port" + portName);
-        }
-    }
-
-    /**
-    * Set the endpoint address for the specified port name.
-    */
-    public void setEndpointAddress(javax.xml.namespace.QName portName, java.lang.String address) throws javax.xml.rpc.ServiceException {
-        setEndpointAddress(portName.getLocalPart(), address);
-    }
-
-}
+/**
+ * SforceServiceLocator.java
+ *
+ * This file was auto-generated from WSDL
+ * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter.
+ */
+
+package com.sforce.soap.partner;
+
+public class SforceServiceLocator extends org.apache.axis.client.Service implements com.sforce.soap.partner.SforceService {
+
+/**
+ * Sforce SOAP API
+ */
+
+    public SforceServiceLocator() {
+    }
+
+
+    public SforceServiceLocator(org.apache.axis.EngineConfiguration config) {
+        super(config);
+    }
+
+    public SforceServiceLocator(java.lang.String wsdlLoc, javax.xml.namespace.QName sName) throws javax.xml.rpc.ServiceException {
+        super(wsdlLoc, sName);
+    }
+
+    // Use to get a proxy class for Soap
+    private java.lang.String Soap_address = "https://www.salesforce.com/services/Soap/u/15.0";
+
+    public java.lang.String getSoapAddress() {
+        return Soap_address;
+    }
+
+    // The WSDD service name defaults to the port name.
+    private java.lang.String SoapWSDDServiceName = "Soap";
+
+    public java.lang.String getSoapWSDDServiceName() {
+        return SoapWSDDServiceName;
+    }
+
+    public void setSoapWSDDServiceName(java.lang.String name) {
+        SoapWSDDServiceName = name;
+    }
+
+    public com.sforce.soap.partner.Soap getSoap() throws javax.xml.rpc.ServiceException {
+       java.net.URL endpoint;
+        try {
+            endpoint = new java.net.URL(Soap_address);
+        }
+        catch (java.net.MalformedURLException e) {
+            throw new javax.xml.rpc.ServiceException(e);
+        }
+        return getSoap(endpoint);
+    }
+
+    public com.sforce.soap.partner.Soap getSoap(java.net.URL portAddress) throws javax.xml.rpc.ServiceException {
+        try {
+            com.sforce.soap.partner.SoapBindingStub _stub = new com.sforce.soap.partner.SoapBindingStub(portAddress, this);
+            _stub.setPortName(getSoapWSDDServiceName());
+            return _stub;
+        }
+        catch (org.apache.axis.AxisFault e) {
+            return null;
+        }
+    }
+
+    public void setSoapEndpointAddress(java.lang.String address) {
+        Soap_address = address;
+    }
+
+    /**
+     * For the given interface, get the stub implementation.
+     * If this service has no port for the given interface,
+     * then ServiceException is thrown.
+     */
+    public java.rmi.Remote getPort(Class serviceEndpointInterface) throws javax.xml.rpc.ServiceException {
+        try {
+            if (com.sforce.soap.partner.Soap.class.isAssignableFrom(serviceEndpointInterface)) {
+                com.sforce.soap.partner.SoapBindingStub _stub = new com.sforce.soap.partner.SoapBindingStub(new java.net.URL(Soap_address), this);
+                _stub.setPortName(getSoapWSDDServiceName());
+                return _stub;
+            }
+        }
+        catch (java.lang.Throwable t) {
+            throw new javax.xml.rpc.ServiceException(t);
+        }
+        throw new javax.xml.rpc.ServiceException("There is no stub implementation for the interface:  " + (serviceEndpointInterface == null ? "null" : serviceEndpointInterface.getName()));
+    }
+
+    /**
+     * For the given interface, get the stub implementation.
+     * If this service has no port for the given interface,
+     * then ServiceException is thrown.
+     */
+    public java.rmi.Remote getPort(javax.xml.namespace.QName portName, Class serviceEndpointInterface) throws javax.xml.rpc.ServiceException {
+        if (portName == null) {
+            return getPort(serviceEndpointInterface);
+        }
+        java.lang.String inputPortName = portName.getLocalPart();
+        if ("Soap".equals(inputPortName)) {
+            return getSoap();
+        }
+        else  {
+            java.rmi.Remote _stub = getPort(serviceEndpointInterface);
+            ((org.apache.axis.client.Stub) _stub).setPortName(portName);
+            return _stub;
+        }
+    }
+
+    public javax.xml.namespace.QName getServiceName() {
+        return new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "SforceService");
+    }
+
+    private java.util.HashSet ports = null;
+
+    public java.util.Iterator getPorts() {
+        if (ports == null) {
+            ports = new java.util.HashSet();
+            ports.add(new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "Soap"));
+        }
+        return ports.iterator();
+    }
+
+    /**
+    * Set the endpoint address for the specified port name.
+    */
+    public void setEndpointAddress(java.lang.String portName, java.lang.String address) throws javax.xml.rpc.ServiceException {
+        
+if ("Soap".equals(portName)) {
+            setSoapEndpointAddress(address);
+        }
+        else 
+{ // Unknown Port Name
+            throw new javax.xml.rpc.ServiceException(" Cannot set Endpoint Address for Unknown Port" + portName);
+        }
+    }
+
+    /**
+    * Set the endpoint address for the specified port name.
+    */
+    public void setEndpointAddress(javax.xml.namespace.QName portName, java.lang.String address) throws javax.xml.rpc.ServiceException {
+        setEndpointAddress(portName.getLocalPart(), address);
+    }
+
+}

Modified: trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SoapBindingStub.java
===================================================================
--- trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SoapBindingStub.java	2009-04-15 20:29:00 UTC (rev 781)
+++ trunk/connectors/salesforce-api/src/main/java/com/sforce/soap/partner/SoapBindingStub.java	2009-04-15 21:04:19 UTC (rev 782)
@@ -961,6 +961,13 @@
             cachedSerFactories.add(beansf);
             cachedDeserFactories.add(beandf);
 
+            qName = new javax.xml.namespace.QName("urn:partner.soap.sforce.com", ">AllowFieldTruncationHeader");
+            cachedSerQNames.add(qName);
+            cls = com.sforce.soap.partner.AllowFieldTruncationHeader.class;
+            cachedSerClasses.add(cls);
+            cachedSerFactories.add(beansf);
+            cachedDeserFactories.add(beandf);
+
             qName = new javax.xml.namespace.QName("urn:partner.soap.sforce.com", ">AssignmentRuleHeader");
             cachedSerQNames.add(qName);
             cls = com.sforce.soap.partner.AssignmentRuleHeader.class;
@@ -1615,13 +1622,6 @@
             cachedSerFactories.add(beansf);
             cachedDeserFactories.add(beandf);
 
-            qName = new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "DescribeSoftphoneLayoutInfoField");
-            cachedSerQNames.add(qName);
-            cls = com.sforce.soap.partner.DescribeSoftphoneLayoutInfoField.class;
-            cachedSerClasses.add(cls);
-            cachedSerFactories.add(beansf);
-            cachedDeserFactories.add(beandf);
-
     }
     private void addBindings1() {
             java.lang.Class cls;
@@ -1637,6 +1637,13 @@
             java.lang.Class simpledf = org.apache.axis.encoding.ser.SimpleDeserializerFactory.class;
             java.lang.Class simplelistsf = org.apache.axis.encoding.ser.SimpleListSerializerFactory.class;
             java.lang.Class simplelistdf = org.apache.axis.encoding.ser.SimpleListDeserializerFactory.class;
+            qName = new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "DescribeSoftphoneLayoutInfoField");
+            cachedSerQNames.add(qName);
+            cls = com.sforce.soap.partner.DescribeSoftphoneLayoutInfoField.class;
+            cachedSerClasses.add(cls);
+            cachedSerFactories.add(beansf);
+            cachedDeserFactories.add(beandf);
+
             qName = new javax.xml.namespace.QName("urn:partner.soap.sforce.com", "DescribeSoftphoneLayoutItem");
             cachedSerQNames.add(qName);
             cls = com.sforce.soap.partner.DescribeSoftphoneLayoutItem.class;

Deleted: trunk/connectors/salesforce-api/src/main/resources/partner_v14.wsdl
===================================================================
--- trunk/connectors/salesforce-api/src/main/resources/partner_v14.wsdl	2009-04-15 20:29:00 UTC (rev 781)
+++ trunk/connectors/salesforce-api/src/main/resources/partner_v14.wsdl	2009-04-15 21:04:19 UTC (rev 782)
@@ -1,2835 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-
-<!--
-Salesforce.com Partner Web Services API Version 14.0
-Generated on 2008-11-12 15:51:21 +0000.
-
-Copyright 1999-2008 salesforce.com, inc.
-All Rights Reserved
--->
-
-<definitions targetNamespace="urn:partner.soap.sforce.com"
-             xmlns="http://schemas.xmlsoap.org/wsdl/"
-             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
-             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-             xmlns:fns="urn:fault.partner.soap.sforce.com"
-             xmlns:tns="urn:partner.soap.sforce.com"
-             xmlns:ens="urn:sobject.partner.soap.sforce.com">
-    <types>
-
-        <schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:sobject.partner.soap.sforce.com">
-
-            <import namespace="urn:partner.soap.sforce.com"/>
-
-
-            <!-- Dynamic sObject -->
-            <complexType name="sObject">
-                <sequence>
-                    <element name="type"               type="xsd:string"/>
-                    <element name="fieldsToNull"       type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="Id"                 type="tns:ID" nillable="true" />
-                    <any namespace="##targetNamespace" minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
-                </sequence>
-            </complexType>
-
-        </schema>
-
-        <schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:partner.soap.sforce.com">
-
-            <import namespace="urn:sobject.partner.soap.sforce.com"/>
-
-            <!-- Our simple ID Type -->
-            <simpleType name="ID">
-                <restriction base="xsd:string">
-                    <length value="18"/>
-                    <pattern value='[a-zA-Z0-9]{18}'/>
-                </restriction>
-            </simpleType>
-
-            <simpleType name="QueryLocator">
-                <restriction base="xsd:string"/>
-            </simpleType>
-
-            <!-- Shared Result Types -->
-            <complexType name="QueryResult">
-                <sequence>
-                    <element name="done"         type="xsd:boolean"/>
-                    <element name="queryLocator" type="tns:QueryLocator" nillable="true"/>
-                    <element name="records"      type="ens:sObject" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="size"         type="xsd:int"/>
-                </sequence>
-            </complexType>
-
-
-
-            <!-- Search Result -->
-            <complexType name="SearchResult">
-                <sequence>
-                    <element name="searchRecords"  minOccurs="0" maxOccurs="unbounded" type="tns:SearchRecord"/>
-                    <element name="sforceReserved" minOccurs="0" maxOccurs="1" type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="SearchRecord">
-                <sequence>
-                    <element name="record" type="ens:sObject"/>
-                </sequence>
-            </complexType>
-
-            <!-- GetUpdated Result -->
-            <complexType name="GetUpdatedResult">
-                <sequence>
-                    <element name="ids" minOccurs="0" maxOccurs="unbounded" type="tns:ID"/>
-                    <element name="latestDateCovered" type="xsd:dateTime"/>
-                    <element name="sforceReserved" minOccurs="0" maxOccurs="1" type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <!-- GetDeleted Result -->
-            <complexType name="GetDeletedResult">
-                <sequence>
-                    <element name="deletedRecords" minOccurs="0" maxOccurs="unbounded" type="tns:DeletedRecord"/>
-                    <element name="earliestDateAvailable" type="xsd:dateTime"/>
-                    <element name="latestDateCovered" type="xsd:dateTime"/>
-                    <element name="sforceReserved" minOccurs="0" maxOccurs="1" type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DeletedRecord">
-                <sequence>
-                    <element name="deletedDate" type="xsd:dateTime"/>
-                    <element name="id"          type="tns:ID"/>
-                </sequence>
-            </complexType>
-
-
-            <complexType name="GetServerTimestampResult">
-                <sequence>
-                    <element name="timestamp" type="xsd:dateTime"/>
-                </sequence>
-            </complexType>
-
-
-            <!-- InvalidateSessions Result -->
-            <complexType name="InvalidateSessionsResult">
-                <sequence>
-                    <element name="errors"  type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="success"   type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="SetPasswordResult">
-            </complexType>
-
-            <complexType name="ResetPasswordResult">
-                <sequence>
-                    <element name="password" type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="GetUserInfoResult">
-                <sequence>
-                    <element name="accessibilityMode"          type="xsd:boolean"/>
-                    <element name="currencySymbol"             type="xsd:string" nillable="true"/>
-                    <element name="orgDefaultCurrencyIsoCode"  type="xsd:string" nillable="true"/>
-                    <element name="orgHasPersonAccounts"       type="xsd:boolean"/>
-                    <element name="organizationId"             type="tns:ID"/>
-                    <element name="organizationMultiCurrency"  type="xsd:boolean"/>
-                    <element name="organizationName"           type="xsd:string"/>
-                    <element name="profileId"                  type="tns:ID"/>
-                    <element name="roleId"                     type="tns:ID" nillable="true"/>
-                    <element name="userDefaultCurrencyIsoCode" type="xsd:string" nillable="true"/>
-                    <element name="userEmail"                  type="xsd:string"/>
-                    <element name="userFullName"               type="xsd:string"/>
-                    <element name="userId"                     type="tns:ID"/>
-                    <element name="userLanguage"               type="xsd:string"/>
-                    <element name="userLocale"                 type="xsd:string"/>
-                    <element name="userName"                   type="xsd:string"/>
-                    <element name="userTimeZone"               type="xsd:string"/>
-                    <element name="userType"                   type="xsd:string"/>
-                    <element name="userUiSkin"                 type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="LoginResult">
-                <sequence>
-                    <element name="metadataServerUrl" type="xsd:string" nillable="true"/>
-                    <element name="passwordExpired"   type="xsd:boolean" />
-                    <element name="sandbox"      type="xsd:boolean"/>
-                    <element name="serverUrl"         type="xsd:string" nillable="true"/>
-                    <element name="sessionId"         type="xsd:string" nillable="true"/>
-
-                    <element name="userId"           type="tns:ID" nillable="true"/>
-                    <element name="userInfo"         type="tns:GetUserInfoResult" minOccurs="0"/>
-                </sequence>
-            </complexType>
-
-            <simpleType name="StatusCode">
-                <restriction base="xsd:string">
-                    <enumeration value="ALREADY_IN_PROCESS"/>
-                    <enumeration value="ASSIGNEE_TYPE_REQUIRED"/>
-                    <enumeration value="BAD_CUSTOM_ENTITY_PARENT_DOMAIN"/>
-                    <enumeration value="BCC_NOT_ALLOWED_IF_BCC_COMPLIANCE_ENABLED"/>
-                    <enumeration value="CANNOT_CASCADE_PRODUCT_ACTIVE"/>
-                    <enumeration value="CANNOT_CHANGE_FIELD_TYPE_OF_APEX_REFERENCED_FIELD"/>
-                    <enumeration value="CANNOT_CREATE_ANOTHER_MANAGED_PACKAGE"/>
-                    <enumeration value="CANNOT_DEACTIVATE_DIVISION"/>
-                    <enumeration value="CANNOT_DELETE_LAST_DATED_CONVERSION_RATE"/>
-                    <enumeration value="CANNOT_DELETE_MANAGED_OBJECT"/>
-                    <enumeration value="CANNOT_DISABLE_LAST_ADMIN"/>
-                    <enumeration value="CANNOT_ENABLE_IP_RESTRICT_REQUESTS"/>
-                    <enumeration value="CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY"/>
-                    <enumeration value="CANNOT_MODIFY_MANAGED_OBJECT"/>
-                    <enumeration value="CANNOT_RENAME_APEX_REFERENCED_FIELD"/>
-                    <enumeration value="CANNOT_RENAME_APEX_REFERENCED_OBJECT"/>
-                    <enumeration value="CANNOT_REPARENT_RECORD"/>
-                    <enumeration value="CANNOT_UPDATE_CONVERTED_LEAD"/>
-                    <enumeration value="CANT_DISABLE_CORP_CURRENCY"/>
-                    <enumeration value="CANT_UNSET_CORP_CURRENCY"/>
-                    <enumeration value="CHILD_SHARE_FAILS_PARENT"/>
-                    <enumeration value="CIRCULAR_DEPENDENCY"/>
-                    <enumeration value="CUSTOM_CLOB_FIELD_LIMIT_EXCEEDED"/>
-                    <enumeration value="CUSTOM_ENTITY_OR_FIELD_LIMIT"/>
-                    <enumeration value="CUSTOM_FIELD_INDEX_LIMIT_EXCEEDED"/>
-                    <enumeration value="CUSTOM_INDEX_EXISTS"/>
-                    <enumeration value="CUSTOM_LINK_LIMIT_EXCEEDED"/>
-                    <enumeration value="CUSTOM_TAB_LIMIT_EXCEEDED"/>
-                    <enumeration value="DELETE_FAILED"/>
-                    <enumeration value="DELETE_REQUIRED_ON_CASCADE"/>
-                    <enumeration value="DEPENDENCY_EXISTS"/>
-                    <enumeration value="DUPLICATE_CASE_SOLUTION"/>
-                    <enumeration value="DUPLICATE_COMM_NICKNAME"/>
-                    <enumeration value="DUPLICATE_CUSTOM_ENTITY_DEFINITION"/>
-                    <enumeration value="DUPLICATE_CUSTOM_TAB_MOTIF"/>
-                    <enumeration value="DUPLICATE_DEVELOPER_NAME"/>
-                    <enumeration value="DUPLICATE_EXTERNAL_ID"/>
-                    <enumeration value="DUPLICATE_MASTER_LABEL"/>
-                    <enumeration value="DUPLICATE_USERNAME"/>
-                    <enumeration value="DUPLICATE_VALUE"/>
-                    <enumeration value="EMAIL_NOT_PROCESSED_DUE_TO_PRIOR_ERROR"/>
-                    <enumeration value="EMPTY_SCONTROL_FILE_NAME"/>
-                    <enumeration value="ENTITY_FAILED_IFLASTMODIFIED_ON_UPDATE"/>
-                    <enumeration value="ENTITY_IS_ARCHIVED"/>
-                    <enumeration value="ENTITY_IS_DELETED"/>
-                    <enumeration value="ENTITY_IS_LOCKED"/>
-                    <enumeration value="ERROR_IN_MAILER"/>
-                    <enumeration value="FAILED_ACTIVATION"/>
-                    <enumeration value="FIELD_CUSTOM_VALIDATION_EXCEPTION"/>
-                    <enumeration value="FIELD_INTEGRITY_EXCEPTION"/>
-                    <enumeration value="HTML_FILE_UPLOAD_NOT_ALLOWED"/>
-                    <enumeration value="IMAGE_TOO_LARGE"/>
-                    <enumeration value="INACTIVE_OWNER_OR_USER"/>
-                    <enumeration value="INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY"/>
-                    <enumeration value="INSUFFICIENT_ACCESS_OR_READONLY"/>
-                    <enumeration value="INVALID_ACCESS_LEVEL"/>
-                    <enumeration value="INVALID_ARGUMENT_TYPE"/>
-                    <enumeration value="INVALID_ASSIGNEE_TYPE"/>
-                    <enumeration value="INVALID_ASSIGNMENT_RULE"/>
-                    <enumeration value="INVALID_BATCH_OPERATION"/>
-                    <enumeration value="INVALID_CREDIT_CARD_INFO"/>
-                    <enumeration value="INVALID_CROSS_REFERENCE_KEY"/>
-                    <enumeration value="INVALID_CROSS_REFERENCE_TYPE_FOR_FIELD"/>
-                    <enumeration value="INVALID_CURRENCY_CONV_RATE"/>
-                    <enumeration value="INVALID_CURRENCY_CORP_RATE"/>
-                    <enumeration value="INVALID_CURRENCY_ISO"/>
-                    <enumeration value="INVALID_EMAIL_ADDRESS"/>
-                    <enumeration value="INVALID_EMPTY_KEY_OWNER"/>
-                    <enumeration value="INVALID_FIELD"/>
-                    <enumeration value="INVALID_FIELD_FOR_INSERT_UPDATE"/>
-                    <enumeration value="INVALID_FIELD_WHEN_USING_TEMPLATE"/>
-                    <enumeration value="INVALID_FILTER_ACTION"/>
-                    <enumeration value="INVALID_GOOGLE_DOCS_URL"/>
-                    <enumeration value="INVALID_ID_FIELD"/>
-                    <enumeration value="INVALID_INET_ADDRESS"/>
-                    <enumeration value="INVALID_LINEITEM_CLONE_STATE"/>
-                    <enumeration value="INVALID_MASTER_OR_TRANSLATED_SOLUTION"/>
-                    <enumeration value="INVALID_OPERATION"/>
-                    <enumeration value="INVALID_OPERATOR"/>
-                    <enumeration value="INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST"/>
-                    <enumeration value="INVALID_PARTNER_NETWORK_STATUS"/>
-                    <enumeration value="INVALID_PERSON_ACCOUNT_OPERATION"/>
-                    <enumeration value="INVALID_SAVE_AS_ACTIVITY_FLAG"/>
-                    <enumeration value="INVALID_SESSION_ID"/>
-                    <enumeration value="INVALID_SETUP_OWNER"/>
-                    <enumeration value="INVALID_STATUS"/>
-                    <enumeration value="INVALID_TYPE"/>
-                    <enumeration value="INVALID_TYPE_FOR_OPERATION"/>
-                    <enumeration value="INVALID_TYPE_ON_FIELD_IN_RECORD"/>
-                    <enumeration value="IP_RANGE_LIMIT_EXCEEDED"/>
-                    <enumeration value="LICENSE_LIMIT_EXCEEDED"/>
-                    <enumeration value="LIMIT_EXCEEDED"/>
-                    <enumeration value="MALFORMED_ID"/>
-                    <enumeration value="MANAGER_NOT_DEFINED"/>
-                    <enumeration value="MASSMAIL_RETRY_LIMIT_EXCEEDED"/>
-                    <enumeration value="MASS_MAIL_LIMIT_EXCEEDED"/>
-                    <enumeration value="MAXIMUM_CCEMAILS_EXCEEDED"/>
-                    <enumeration value="MAXIMUM_DASHBOARD_COMPONENTS_EXCEEDED"/>
-                    <enumeration value="MAXIMUM_HIERARCHY_LEVELS_REACHED"/>
-                    <enumeration value="MAXIMUM_SIZE_OF_ATTACHMENT"/>
-                    <enumeration value="MAXIMUM_SIZE_OF_DOCUMENT"/>
-                    <enumeration value="MAX_ACTIONS_PER_RULE_EXCEEDED"/>
-                    <enumeration value="MAX_ACTIVE_RULES_EXCEEDED"/>
-                    <enumeration value="MAX_APPROVAL_STEPS_EXCEEDED"/>
-                    <enumeration value="MAX_FORMULAS_PER_RULE_EXCEEDED"/>
-                    <enumeration value="MAX_RULES_EXCEEDED"/>
-                    <enumeration value="MAX_RULE_ENTRIES_EXCEEDED"/>
-                    <enumeration value="MAX_TASK_DESCRIPTION_EXCEEEDED"/>
-                    <enumeration value="MAX_TM_RULES_EXCEEDED"/>
-                    <enumeration value="MAX_TM_RULE_ITEMS_EXCEEDED"/>
-                    <enumeration value="MERGE_FAILED"/>
-                    <enumeration value="MISSING_ARGUMENT"/>
-                    <enumeration value="MIXED_DML_OPERATION"/>
-                    <enumeration value="NONUNIQUE_SHIPPING_ADDRESS"/>
-                    <enumeration value="NO_APPLICABLE_PROCESS"/>
-                    <enumeration value="NO_ATTACHMENT_PERMISSION"/>
-                    <enumeration value="NO_MASS_MAIL_PERMISSION"/>
-                    <enumeration value="NUMBER_OUTSIDE_VALID_RANGE"/>
-                    <enumeration value="NUM_HISTORY_FIELDS_BY_SOBJECT_EXCEEDED"/>
-                    <enumeration value="OPTED_OUT_OF_MASS_MAIL"/>
-                    <enumeration value="PACKAGE_LICENSE_REQUIRED"/>
-                    <enumeration value="PORTAL_USER_ALREADY_EXISTS_FOR_CONTACT"/>
-                    <enumeration value="PRIVATE_CONTACT_ON_ASSET"/>
-                    <enumeration value="RECORD_IN_USE_BY_WORKFLOW"/>
-                    <enumeration value="REQUEST_RUNNING_TOO_LONG"/>
-                    <enumeration value="REQUIRED_FIELD_MISSING"/>
-                    <enumeration value="SELF_REFERENCE_FROM_TRIGGER"/>
-                    <enumeration value="SHARE_NEEDED_FOR_CHILD_OWNER"/>
-                    <enumeration value="STANDARD_PRICE_NOT_DEFINED"/>
-                    <enumeration value="STORAGE_LIMIT_EXCEEDED"/>
-                    <enumeration value="STRING_TOO_LONG"/>
-                    <enumeration value="TABSET_LIMIT_EXCEEDED"/>
-                    <enumeration value="TEMPLATE_NOT_ACTIVE"/>
-                    <enumeration value="TERRITORY_REALIGN_IN_PROGRESS"/>
-                    <enumeration value="TEXT_DATA_OUTSIDE_SUPPORTED_CHARSET"/>
-                    <enumeration value="TOO_MANY_APEX_REQUESTS"/>
-                    <enumeration value="TOO_MANY_ENUM_VALUE"/>
-                    <enumeration value="TRANSFER_REQUIRES_READ"/>
-                    <enumeration value="UNABLE_TO_LOCK_ROW"/>
-                    <enumeration value="UNAVAILABLE_RECORDTYPE_EXCEPTION"/>
-                    <enumeration value="UNDELETE_FAILED"/>
-                    <enumeration value="UNKNOWN_EXCEPTION"/>
-                    <enumeration value="UNSPECIFIED_EMAIL_ADDRESS"/>
-                    <enumeration value="UNSUPPORTED_APEX_TRIGGER_OPERATON"/>
-                    <enumeration value="WEBLINK_SIZE_LIMIT_EXCEEDED"/>
-                    <enumeration value="WRONG_CONTROLLER_TYPE"/>
-                </restriction>
-            </simpleType>
-
-
-            <complexType name="Error">
-                <sequence>
-                    <element name="fields"     type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="message"    type="xsd:string"/>
-                    <element name="statusCode" type="tns:StatusCode"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="SendEmailError">
-                <sequence>
-                    <element name="fields"     type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="message"    type="xsd:string"/>
-                    <element name="statusCode" type="tns:StatusCode"/>
-                    <element name="targetObjectId"     type="tns:ID"  nillable="true"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="SaveResult">
-                <sequence>
-                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="id"        type="tns:ID" nillable="true"/>
-                    <element name="success"   type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="UpsertResult">
-                <sequence>
-                    <element name="created"  type="xsd:boolean"/>
-                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="id"       type="tns:ID" nillable="true"/>
-                    <element name="success"   type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="MergeRequest">
-                <sequence>
-                    <element name="masterRecord" type="ens:sObject"/>
-                    <element name="recordToMergeIds" type="tns:ID" minOccurs="1" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="MergeResult">
-                <sequence>
-                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="id"        type="tns:ID" nillable="true"/>
-                    <element name="mergedRecordIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="success"   type="xsd:boolean"/>
-                    <element name="updatedRelatedIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="ProcessRequest">
-                <sequence>
-                    <element name="comments"       type="xsd:string" nillable="true"/>
-                    <element name="nextApproverIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="ProcessSubmitRequest">
-                <complexContent>
-                    <extension base="tns:ProcessRequest">
-                        <sequence>
-                            <element name="objectId"     type="tns:ID"/>
-                        </sequence>
-                    </extension>
-                </complexContent>
-            </complexType>
-
-            <complexType name="ProcessWorkitemRequest">
-                <complexContent>
-                    <extension base="tns:ProcessRequest">
-                        <sequence>
-                            <element name="action"         type="xsd:string"/>
-                            <element name="workitemId"     type="tns:ID"/>
-                        </sequence>
-                    </extension>
-                </complexContent>
-            </complexType>
-
-            <complexType name="ProcessResult">
-                <sequence>
-                    <element name="actorIds"        type="tns:ID" nillable="false" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="entityId"        type="tns:ID" nillable="true"/>
-                    <element name="errors"          type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="instanceId"      type="tns:ID" nillable="true"/>
-                    <element name="instanceStatus"  type="xsd:string" nillable="true"/>
-                    <element name="newWorkitemIds"  type="tns:ID" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="success"         type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DeleteResult">
-                <sequence>
-                    <element name="errors"    type="tns:Error" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="id"        type="tns:ID" nillable="true"/>
-                    <element name="success"   type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="UndeleteResult">
-                <sequence>
-                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="id"        type="tns:ID" nillable="true"/>
-                    <element name="success"   type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="EmptyRecycleBinResult">
-                <sequence>
-                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="id"        type="tns:ID" nillable="true"/>
-                    <element name="success"   type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="LeadConvert">
-                <sequence>
-                    <element name="accountId"              type="tns:ID" nillable="true"/>
-                    <element name="contactId"              type="tns:ID" nillable="true"/>
-                    <element name="convertedStatus"        type="xsd:string"/>
-                    <element name="doNotCreateOpportunity" type="xsd:boolean"/>
-                    <element name="leadId"                 type="tns:ID"/>
-                    <element name="opportunityName"        type="xsd:string" nillable="true"/>
-                    <element name="overwriteLeadSource"    type="xsd:boolean"/>
-                    <element name="ownerId"                type="tns:ID"     nillable="true"/>
-                    <element name="sendNotificationEmail"  type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="LeadConvertResult">
-                <sequence>
-                    <element name="accountId"     type="tns:ID" nillable="true"/>
-                    <element name="contactId"     type="tns:ID" nillable="true"/>
-                    <element name="errors"        type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="leadId"        type="tns:ID" nillable="true"/>
-                    <element name="opportunityId" type="tns:ID" nillable="true"/>
-                    <element name="success"       type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeSObjectResult">
-                <sequence>
-                    <element name="activateable"        type="xsd:boolean"/>
-                    <element name="childRelationships"  type="tns:ChildRelationship" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="createable"          type="xsd:boolean"/>
-                    <element name="custom"              type="xsd:boolean"/>
-                    <element name="deletable"           type="xsd:boolean"/>
-                    <element name="fields"              type="tns:Field" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="keyPrefix"           type="xsd:string" nillable="true"/>
-                    <element name="label"               type="xsd:string"/>
-                    <element name="labelPlural"         type="xsd:string"/>
-                    <element name="layoutable"          type="xsd:boolean"/>
-                    <element name="mergeable"           type="xsd:boolean"/>
-                    <element name="name"                type="xsd:string"/>
-                    <element name="queryable"           type="xsd:boolean"/>
-                    <element name="recordTypeInfos"     type="tns:RecordTypeInfo" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="replicateable"       type="xsd:boolean"/>
-                    <element name="retrieveable"        type="xsd:boolean"/>
-                    <element name="searchable"          type="xsd:boolean" />
-                    <element name="triggerable"         type="xsd:boolean" minOccurs="0"/>
-                    <element name="undeletable"         type="xsd:boolean"/>
-                    <element name="updateable"          type="xsd:boolean"/>
-                    <element name="urlDetail"           type="xsd:string" nillable="true"/>
-                    <element name="urlEdit"             type="xsd:string" nillable="true"/>
-                    <element name="urlNew"              type="xsd:string" nillable="true"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="ChildRelationship">
-                <sequence>
-                    <element name="cascadeDelete"    type="xsd:boolean"/>
-                    <element name="childSObject"     type="xsd:string"/>
-                    <element name="field"            type="xsd:string"/>
-                    <element name="relationshipName" type="xsd:string" minOccurs="0"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeGlobalResult">
-                <sequence>
-                    <element name="encoding"       type="xsd:string" nillable="true"/>
-                    <element name="maxBatchSize"   type="xsd:int"/>
-                    <element name="types"          type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <simpleType name="fieldType">
-                <restriction base="xsd:string">
-                    <enumeration value="string"/>
-                    <enumeration value="picklist"/>
-                    <enumeration value="multipicklist"/>
-                    <enumeration value="combobox"/>
-                    <enumeration value="reference"/>
-                    <enumeration value="base64"/>
-                    <enumeration value="boolean"/>
-                    <enumeration value="currency"/>
-                    <enumeration value="textarea"/>
-                    <enumeration value="int"/>
-                    <enumeration value="double"/>
-                    <enumeration value="percent"/>
-                    <enumeration value="phone"/>
-                    <enumeration value="id"/>
-                    <enumeration value="date"/>
-                    <enumeration value="datetime"/>
-                    <enumeration value="time"/>
-                    <enumeration value="url"/>
-                    <enumeration value="email"/>
-                    <enumeration value="encryptedstring"/>
-                    <enumeration value="anyType"/> <!-- can be string, picklist, reference, boolean, currency, int, double, percent, id, date, datetime, url, email -->
-                </restriction>
-            </simpleType>
-
-            <simpleType name="soapType">
-                <restriction base="xsd:string">
-                    <enumeration value="tns:ID"/>
-                    <enumeration value="xsd:base64Binary"/>
-                    <enumeration value="xsd:boolean"/>
-                    <enumeration value="xsd:double"/>
-                    <enumeration value="xsd:int"/>
-                    <enumeration value="xsd:string"/>
-                    <enumeration value="xsd:date"/>
-                    <enumeration value="xsd:dateTime"/>
-                    <enumeration value="xsd:time"/>
-                    <enumeration value="xsd:anyType"/> <!-- can be id, booolean, double, int, string, date, dateTime -->
-                </restriction>
-            </simpleType>
-
-            <complexType name="Field">
-                <sequence>
-                    <element name="autoNumber"         type="xsd:boolean"/>
-                    <element name="byteLength"         type="xsd:int"/>
-                    <element name="calculated"         type="xsd:boolean"/>
-                    <element name="calculatedFormula"  type="xsd:string" minOccurs="0"/>
-                    <element name="caseSensitive"      type="xsd:boolean"/>
-                    <element name="controllerName"     type="xsd:string" minOccurs="0"/>
-                    <element name="createable"         type="xsd:boolean"/>
-                    <element name="custom"             type="xsd:boolean"/>
-                    <element name="defaultValueFormula" type="xsd:string" minOccurs="0"/>
-                    <element name="defaultedOnCreate"  type="xsd:boolean"/>
-                    <element name="dependentPicklist"  type="xsd:boolean" minOccurs="0"/>
-                    <element name="digits"             type="xsd:int"/>
-                    <element name="externalId"         type="xsd:boolean" minOccurs="0"/>
-                    <element name="filterable"         type="xsd:boolean"/>
-                    <element name="htmlFormatted"      type="xsd:boolean" minOccurs="0"/>
-                    <element name="idLookup"           type="xsd:boolean"/>
-                    <element name="inlineHelpText"     type="xsd:string" minOccurs="0"/>
-                    <element name="label"              type="xsd:string"/>
-                    <element name="length"             type="xsd:int"/>
-                    <element name="name"               type="xsd:string"/>
-                    <element name="nameField"          type="xsd:boolean"/>
-                    <element name="namePointing"       type="xsd:boolean" minOccurs="0"/>
-                    <element name="nillable"           type="xsd:boolean"/>
-                    <element name="picklistValues"     type="tns:PicklistEntry" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="precision"          type="xsd:int"/>
-                    <element name="referenceTo"        type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="relationshipName"   type="xsd:string" minOccurs="0"/>
-                    <element name="relationshipOrder"  type="xsd:int" minOccurs="0"/>
-                    <element name="restrictedPicklist" type="xsd:boolean"/>
-                    <element name="scale"              type="xsd:int"/>
-                    <element name="soapType"           type="tns:soapType"/>
-                    <element name="sortable"           type="xsd:boolean" minOccurs="0"/>
-                    <element name="type"               type="tns:fieldType"/>
-                    <element name="unique"             type="xsd:boolean"/>
-                    <element name="updateable"         type="xsd:boolean"/>
-                    <element name="writeRequiresMasterRead" type="xsd:boolean" minOccurs="0"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="PicklistEntry">
-                <sequence>
-                    <element name="active"       type="xsd:boolean"/>
-                    <element name="defaultValue" type="xsd:boolean"/>
-                    <element name="label"        type="xsd:string" nillable="true"/>
-                    <element name="validFor"     type="xsd:base64Binary" minOccurs="0"/>
-                    <element name="value"        type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeSoftphoneLayoutResult">
-                <sequence>
-                    <element name="callTypes" type="tns:DescribeSoftphoneLayoutCallType" maxOccurs="unbounded"/>
-                    <element name="id" type="tns:ID"/>
-                    <element name="name" type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeSoftphoneLayoutCallType">
-                <sequence>
-                    <element name="infoFields" type="tns:DescribeSoftphoneLayoutInfoField" maxOccurs="unbounded"/>
-                    <element name="name" type="xsd:string"/>
-                    <element name="sections" type="tns:DescribeSoftphoneLayoutSection" minOccurs="0" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeSoftphoneLayoutInfoField">
-                <sequence>
-                    <element name="name" type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeSoftphoneLayoutSection">
-                <sequence>
-                    <element name="entityApiName" type="xsd:string"/>
-                    <element name="items" type="tns:DescribeSoftphoneLayoutItem" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeSoftphoneLayoutItem">
-                <sequence>
-                    <element name="itemApiName" type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayoutResult">
-                <sequence>
-                    <element name="layouts"            type="tns:DescribeLayout" maxOccurs="unbounded"/>
-                    <element name="recordTypeMappings" type="tns:RecordTypeMapping" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="recordTypeSelectorRequired" type="xsd:boolean" />
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayout">
-                <sequence>
-                    <element name="buttonLayoutSection"  type="tns:DescribeLayoutButtonSection" minOccurs="0"/>
-                    <element name="detailLayoutSections" type="tns:DescribeLayoutSection" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="editLayoutSections"   type="tns:DescribeLayoutSection" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="id"                   type="tns:ID"/>
-
-
-                    <element name="relatedLists"                type="tns:RelatedList" minOccurs="0" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayoutSection">
-                <sequence>
-                    <element name="columns"                 type="xsd:int"/>
-                    <element name="heading"                 type="xsd:string"/>
-                    <element name="layoutRows"              type="tns:DescribeLayoutRow" maxOccurs="unbounded"/>
-                    <element name="rows"                    type="xsd:int"/>
-                    <element name="useCollapsibleSection"   type="xsd:boolean"/>
-                    <element name="useHeading"              type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayoutButtonSection">
-                <sequence>
-                    <element name="detailButtons"         type="tns:DescribeLayoutButton" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayoutRow">
-                <sequence>
-                    <element name="layoutItems"      type="tns:DescribeLayoutItem" maxOccurs="unbounded"/>
-                    <element name="numItems"         type="xsd:int"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayoutItem">
-                <sequence>
-                    <element name="editable"         type="xsd:boolean"/>
-                    <element name="label"            type="xsd:string" nillable="true"/>
-                    <element name="layoutComponents" type="tns:DescribeLayoutComponent" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="placeholder"      type="xsd:boolean"/>
-                    <element name="required"         type="xsd:boolean"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayoutButton">
-                <sequence>
-                    <element name="custom"           type="xsd:boolean"/>
-                    <element name="label"            type="xsd:string" nillable="true"/>
-                    <element name="name"             type="xsd:string" nillable="true"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeLayoutComponent">
-                <sequence>
-                    <element name="displayLines"      type="xsd:int"/>
-                    <element name="tabOrder"          type="xsd:int"/>
-                    <element name="type"              type="tns:layoutComponentType"/>
-                    <element name="value"             type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <simpleType name="layoutComponentType">
-                <restriction base="xsd:string">
-                    <enumeration value="Field"/>
-                    <enumeration value="Separator"/>
-                    <enumeration value="SControl"/>
-                    <enumeration value="EmptySpace"/>
-                </restriction>
-            </simpleType>
-
-            <complexType name="RecordTypeInfo">
-                <sequence>
-                    <element name="available"                 type="xsd:boolean"/>
-                    <element name="defaultRecordTypeMapping"  type="xsd:boolean"/>
-                    <element name="name"                      type="xsd:string"/>
-                    <element name="recordTypeId"              type="tns:ID" nillable="true"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="RecordTypeMapping">
-                <sequence>
-                    <element name="available"                 type="xsd:boolean"/>
-                    <element name="defaultRecordTypeMapping"  type="xsd:boolean"/>
-                    <element name="layoutId"                  type="tns:ID"/>
-                    <element name="name"                      type="xsd:string"/>
-                    <element name="picklistsForRecordType"    type="tns:PicklistForRecordType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    <element name="recordTypeId"              type="tns:ID" nillable="true"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="PicklistForRecordType">
-                <sequence>
-                    <element name="picklistName"      type="xsd:string"/>
-                    <element name="picklistValues"    type="tns:PicklistEntry" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="RelatedList">
-                <sequence>
-                    <element name="columns"         type="tns:RelatedListColumn" maxOccurs="unbounded"/>
-                    <element name="custom"          type="xsd:boolean"/>
-                    <element name="field"           type="xsd:string" nillable="true"/>
-                    <element name="label"           type="xsd:string"/>
-                    <element name="limitRows"       type="xsd:int"/>
-                    <element name="name"            type="xsd:string"/>
-                    <element name="sobject"         type="xsd:string" nillable="true"/>
-                    <element name="sort"            type="tns:RelatedListSort" minOccurs="0" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="RelatedListColumn">
-                <sequence>
-                    <element name="field"           type="xsd:string" nillable="true"/>
-                    <element name="format"          type="xsd:string" nillable="true"/>
-                    <element name="label"           type="xsd:string"/>
-                    <element name="name"            type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="RelatedListSort">
-                <sequence>
-                    <element name="ascending"       type="xsd:boolean"/>
-                    <element name="column"          type="xsd:string"/>
-                </sequence>
-            </complexType>
-
-
-
-            <complexType name="EmailFileAttachment">
-                <sequence>
-                    <element name="body"                nillable="true" minOccurs="0" type="xsd:base64Binary"/>
-                    <element name="fileName"            type="xsd:string" />
-                </sequence>
-            </complexType>
-            <simpleType name="EmailPriority">
-                <restriction base="xsd:string">
-                    <enumeration value="Highest"/>
-                    <enumeration value="High"/>
-                    <enumeration value="Normal"/>
-                    <enumeration value="Low"/>
-                    <enumeration value="Lowest"/>
-                </restriction>
-            </simpleType>
-
-            <complexType name="Email">
-                <sequence>
-                    <element name="bccSender"         type="xsd:boolean" nillable="true"/>
-                    <element name="emailPriority"      type="tns:EmailPriority" nillable="true"/>
-                    <element name="replyTo"            type="xsd:string" nillable="true"/>
-                    <element name="saveAsActivity"     type="xsd:boolean" nillable="true"/>
-                    <element name="senderDisplayName"  type="xsd:string" nillable="true"/>
-                    <element name="subject"            type="xsd:string" nillable="true"/>
-                    <element name="useSignature"       type="xsd:boolean" nillable="true"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="MassEmailMessage">
-                <complexContent>
-                    <extension base="tns:Email">
-                        <sequence>
-                            <element name="description"  type="xsd:string" nillable="true"/>
-                            <element name="targetObjectIds"     minOccurs="0" maxOccurs="250" type="tns:ID" />
-                            <element name="templateId"          type="tns:ID"/>
-                            <element name="whatIds"             minOccurs="0" maxOccurs="250" type="tns:ID" />
-                        </sequence>
-                    </extension>
-                </complexContent>
-            </complexType>
-
-            <complexType name="SingleEmailMessage">
-                <complexContent>
-                    <extension base="tns:Email">
-                        <sequence>
-                            <element name="bccAddresses"        minOccurs="0" maxOccurs="5" type="xsd:string" nillable="true"/>
-                            <element name="ccAddresses"         minOccurs="0" maxOccurs="5" type="xsd:string" nillable="true"/>
-                            <element name="charset"             type="xsd:string" nillable="true"/>
-                            <element name="documentAttachments" minOccurs="0" maxOccurs="unbounded" type="tns:ID" />
-                            <element name="htmlBody"       type="xsd:string" nillable="true"/>
-                            <element name="fileAttachments"     minOccurs="0" maxOccurs="unbounded" type="tns:EmailFileAttachment"/>
-                            <element name="plainTextBody"       type="xsd:string" nillable="true"/>
-                            <element name="targetObjectId"      type="tns:ID" nillable="true"/>
-                            <element name="templateId"          type="tns:ID" nillable="true"/>
-                            <element name="toAddresses"         minOccurs="0" maxOccurs="10" type="xsd:string" nillable="true"/>
-                            <element name="whatId"              type="tns:ID" nillable="true"/>
-                        </sequence>
-                    </extension>
-                </complexContent>
-            </complexType>
-
-            <complexType name="SendEmailResult">
-                <sequence>
-                    <element name="errors"              minOccurs="0" maxOccurs="unbounded" type="tns:SendEmailError" />
-                    <element name="success"             type="xsd:boolean" />
-                </sequence>
-            </complexType>
-
-
-
-            <complexType name="DescribeTabSetResult">
-                <sequence>
-                    <element name="label"           type="xsd:string" />
-                    <element name="logoUrl"         type="xsd:string" />
-                    <element name="namespace"       type="xsd:string" minOccurs="0"/>
-                    <element name="selected"        type="xsd:boolean" />
-                    <element name="tabs"            type="tns:DescribeTab" minOccurs="0" maxOccurs="unbounded"/>
-                </sequence>
-            </complexType>
-
-            <complexType name="DescribeTab">
-                <sequence>
-                    <element name="custom"           type="xsd:boolean" />
-                    <element name="iconUrl"          type="xsd:string" />
-                    <element name="label"            type="xsd:string" />
-                    <element name="miniIconUrl"      type="xsd:string" />
-                    <element name="sobjectName"      type="xsd:string" nillable="true" />
-                    <element name="url"              type="xsd:string" />
-                </sequence>
-            </complexType>
-
-
-
-
-
-            <!-- Login Message Types -->
-            <element name="login">
-                <complexType>
-                    <sequence>
-                        <element name="username" type="xsd:string"/>
-                        <element name="password" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="loginResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:LoginResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Describe Message Types -->
-            <element name="describeSObject">
-                <complexType>
-                    <sequence>
-                        <element name="sObjectType" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="describeSObjectResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:DescribeSObjectResult" nillable="true"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- DescibeSObjects Message Types -->
-            <element name="describeSObjects">
-                <complexType>
-                    <sequence>
-                        <element name="sObjectType" type="xsd:string" minOccurs='0' maxOccurs='100' />
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="describeSObjectsResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:DescribeSObjectResult" nillable="true" minOccurs='0' maxOccurs='100'/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Describe Global Message Types -->
-            <element name="describeGlobal">
-                <complexType>
-                    <sequence/>
-                </complexType>
-            </element>
-            <element name="describeGlobalResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:DescribeGlobalResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="describeLayout">
-                <complexType>
-                    <sequence>
-                        <element name="sObjectType" type="xsd:string"/>
-                        <element name="recordTypeIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="describeLayoutResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:DescribeLayoutResult" nillable="true"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="describeSoftphoneLayout">
-                <complexType>
-                    <sequence/>
-                </complexType>
-            </element>
-            <element name="describeSoftphoneLayoutResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:DescribeSoftphoneLayoutResult" nillable="true"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-            <element name="describeTabs">
-                <complexType>
-                    <sequence/>
-                </complexType>
-            </element>
-            <element name="describeTabsResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:DescribeTabSetResult" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Create Message Types -->
-            <element name="create">
-                <complexType>
-                    <sequence>
-                        <element name="sObjects" type="ens:sObject" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="createResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:SaveResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-
-            <!-- Send Email Types -->
-            <element name="sendEmail">
-                <complexType>
-                    <sequence>
-                        <element name="messages" type="tns:Email" minOccurs="0" maxOccurs="10"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="sendEmailResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" minOccurs="0" maxOccurs="10" type="tns:SendEmailResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-            <!-- Update Message Types -->
-            <element name="update">
-                <complexType>
-                    <sequence>
-                        <element name="sObjects" type="ens:sObject" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="updateResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:SaveResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Upsert Message Types -->
-            <element name="upsert">
-                <complexType>
-                    <sequence>
-                        <element name="externalIDFieldName" type="xsd:string"/>
-                        <element name="sObjects" type="ens:sObject" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="upsertResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:UpsertResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Merge Message Types -->
-            <element name="merge">
-                <complexType>
-                    <sequence>
-                        <element name="request" type="tns:MergeRequest" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="mergeResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:MergeResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Delete Message Types -->
-            <element name="delete">
-                <complexType>
-                    <sequence>
-                        <element name="ids" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="deleteResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:DeleteResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Undelete Message Types -->
-            <element name="undelete">
-                <complexType>
-                    <sequence>
-                        <element name="ids" type="tns:ID" minOccurs="1" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="undeleteResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:UndeleteResult" minOccurs="1" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- EmptyRecycleBin Message Types -->
-            <element name="emptyRecycleBin">
-                <complexType>
-                    <sequence>
-                        <element name="ids" type="tns:ID" minOccurs="1" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="emptyRecycleBinResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:EmptyRecycleBinResult" minOccurs="1" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Process Message Types -->
-            <element name="process">
-                <complexType>
-                    <sequence>
-                        <element name="actions" type="tns:ProcessRequest" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="processResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:ProcessResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Retrieve (ID List) Message Types -->
-            <element name="retrieve">
-                <complexType>
-                    <sequence>
-                        <element name="fieldList"   type="xsd:string"/>
-                        <element name="sObjectType" type="xsd:string"/>
-                        <element name="ids"         type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="retrieveResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="ens:sObject" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Convert Lead Message Types -->
-            <element name="convertLead">
-                <complexType>
-                    <sequence>
-                        <element name="leadConverts" type="tns:LeadConvert" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="convertLeadResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:LeadConvertResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Get Updated Message Types -->
-            <element name="getUpdated">
-                <complexType>
-                    <sequence>
-                        <element name="sObjectType" type="xsd:string"/>
-                        <element name="startDate" type="xsd:dateTime"/>
-                        <element name="endDate" type="xsd:dateTime"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="getUpdatedResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:GetUpdatedResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Get Deleted Message Types -->
-            <element name="getDeleted">
-                <complexType>
-                    <sequence>
-                        <element name="sObjectType" type="xsd:string"/>
-                        <element name="startDate" type="xsd:dateTime"/>
-                        <element name="endDate" type="xsd:dateTime"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="getDeletedResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:GetDeletedResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-            <!-- Logout current session -->
-            <element name="logout">
-                <complexType>
-                </complexType>
-            </element>
-
-            <element name="logoutResponse">
-                <complexType>
-                </complexType>
-            </element>
-
-            <!-- Invalidate a list of session ids -->
-            <element name="invalidateSessions">
-                <complexType>
-                    <sequence>
-                        <element name="sessionIds" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="invalidateSessionsResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:InvalidateSessionsResult" minOccurs="0" maxOccurs="unbounded"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Create Query -->
-            <element name="query">
-                <complexType>
-                    <sequence>
-                        <element name="queryString" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="queryResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:QueryResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Create Query All -->
-            <element name="queryAll">
-                <complexType>
-                    <sequence>
-                        <element name="queryString" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="queryAllResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:QueryResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- Next Batch of sObjects from a query -->
-            <element name="queryMore">
-                <complexType>
-                    <sequence>
-                        <element name="queryLocator" type="tns:QueryLocator"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="queryMoreResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:QueryResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-
-            <!-- Create Search -->
-            <element name="search">
-                <complexType>
-                    <sequence>
-                        <element name="searchString" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="searchResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:SearchResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-
-            <element name="getServerTimestamp">
-                <complexType>
-                    <sequence/>
-                </complexType>
-            </element>
-            <element name="getServerTimestampResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:GetServerTimestampResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="setPassword">
-                <complexType>
-                    <sequence>
-                        <element name="userId" type="tns:ID"/>
-                        <element name="password" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="setPasswordResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:SetPasswordResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="resetPassword">
-                <complexType>
-                    <sequence>
-                        <element name="userId" type="tns:ID"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="resetPasswordResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:ResetPasswordResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="getUserInfo">
-                <complexType>
-                    <sequence/>
-                </complexType>
-            </element>
-            <element name="getUserInfoResponse">
-                <complexType>
-                    <sequence>
-                        <element name="result" type="tns:GetUserInfoResult"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-
-            <!-- Header Elements -->
-            <element name="SessionHeader">
-                <complexType>
-                    <sequence>
-                        <element name="sessionId" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="LoginScopeHeader">
-                <complexType>
-                    <sequence>
-                        <element name="organizationId" type="tns:ID"/>
-                        <element name="portalId" type="tns:ID" minOccurs="0"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-            <element name="CallOptions">
-                <complexType>
-                    <sequence>
-                        <element name="client"            type="xsd:string" nillable="true"/>
-                        <element name="defaultNamespace"  type="xsd:string" nillable="true"/>
-
-                    </sequence>
-                </complexType>
-            </element>
-
-
-            <element name="QueryOptions">
-                <complexType>
-                    <sequence>
-                        <element name="batchSize"       type="xsd:int" minOccurs="0"/>
-
-                    </sequence>
-                </complexType>
-            </element>
-
-
-            <simpleType name="DebugLevel">
-                <restriction base="xsd:string">
-                    <enumeration value="None"/>
-                    <enumeration value="DebugOnly"/>
-                    <enumeration value="Db"/>
-                </restriction>
-            </simpleType>
-            <element name="DebuggingHeader">
-                <complexType>
-                    <sequence>
-                        <element name="debugLevel" type="tns:DebugLevel"/>
-                    </sequence>
-                </complexType>
-            </element>
-            <element name="DebuggingInfo">
-                <complexType>
-                    <sequence>
-                        <element name="debugLog" type="xsd:string"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <!-- ideally this could of just been elem name="..." type="xsd:boolean"
-                 but is required to be nested within a complexType for .NET 1.1 compatibility -->
-            <element name="MruHeader">
-                <complexType>
-                    <sequence>
-                        <element name="updateMru" type="xsd:boolean" />
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="EmailHeader">
-                <complexType>
-                    <sequence>
-                        <element name="triggerAutoResponseEmail"    type="xsd:boolean"/>
-                        <element name="triggerOtherEmail"           type="xsd:boolean"/>
-                        <element name="triggerUserEmail"            type="xsd:boolean"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="AssignmentRuleHeader">
-                <complexType>
-                    <sequence>
-                        <element name="assignmentRuleId"    type="tns:ID"  nillable="true" />
-                        <element name="useDefaultRule"      type="xsd:boolean" nillable="true" />
-                    </sequence>
-                </complexType>
-            </element>
-
-            <element name="UserTerritoryDeleteHeader">
-                <complexType>
-                    <sequence>
-                        <element name="transferToUserId" type="tns:ID" nillable="true"/>
-                    </sequence>
-                </complexType>
-            </element>
-
-
-
-            <element name="LocaleOptions">
-                <complexType>
-                    <sequence>
-                        <element name="language"  type="xsd:string" minOccurs="0"/>
-                    </sequence>
-                </complexType>
-            </element>
-        </schema>
-
-        <schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:fault.partner.soap.sforce.com" xmlns:fns="urn:fault.partner.soap.sforce.com">
-
-            <simpleType name="ExceptionCode">
-                <restriction base="xsd:string">
-                    <enumeration value="API_CURRENTLY_DISABLED"/>
-                    <enumeration value="API_DISABLED_FOR_ORG"/>
-                    <enumeration value="CANT_ADD_STANDADRD_PORTAL_USER_TO_TERRITORY"/>
-                    <enumeration value="CANT_ADD_STANDARD_PORTAL_USER_TO_TERRITORY"/>
-                    <enumeration value="CIRCULAR_OBJECT_GRAPH"/>
-                    <enumeration value="CLIENT_NOT_ACCESSIBLE_FOR_USER"/>
-                    <enumeration value="CLIENT_REQUIRE_UPDATE_FOR_USER"/>
-                    <enumeration value="CUSTOM_METADATA_LIMIT_EXCEEDED"/>
-                    <enumeration value="DUPLICATE_VALUE"/>
-                    <enumeration value="EMAIL_BATCH_SIZE_LIMIT_EXCEEDED"/>
-                    <enumeration value="EMAIL_TO_CASE_INVALID_ROUTING"/>
-                    <enumeration value="EMAIL_TO_CASE_LIMIT_EXCEEDED"/>
-                    <enumeration value="EMAIL_TO_CASE_NOT_ENABLED"/>
-                    <enumeration value="EXCEEDED_ID_LIMIT"/>
-                    <enumeration value="EXCEEDED_LEAD_CONVERT_LIMIT"/>
-                    <enumeration value="EXCEEDED_MAX_SIZE_REQUEST"/>
-                    <enumeration value="EXCEEDED_MAX_TYPES_LIMIT"/>
-                    <enumeration value="EXCEEDED_QUOTA"/>
-                    <enumeration value="FUNCTIONALITY_NOT_ENABLED"/>
-                    <enumeration value="INACTIVE_OWNER_OR_USER"/>
-                    <enumeration value="INACTIVE_PORTAL"/>
-                    <enumeration value="INSUFFICIENT_ACCESS"/>
-                    <enumeration value="INVALID_ASSIGNMENT_RULE"/>
-                    <enumeration value="INVALID_BATCH_SIZE"/>
-                    <enumeration value="INVALID_CLIENT"/>
-                    <enumeration value="INVALID_CROSS_REFERENCE_KEY"/>
-                    <enumeration value="INVALID_FIELD"/>
-                    <enumeration value="INVALID_FILTER_LANGUAGE"/>
-                    <enumeration value="INVALID_FILTER_VALUE"/>
-                    <enumeration value="INVALID_ID_FIELD"/>
-                    <enumeration value="INVALID_LOCALE_LANGUAGE"/>
-                    <enumeration value="INVALID_LOCATOR"/>
-                    <enumeration value="INVALID_LOGIN"/>
-                    <enumeration value="INVALID_NEW_PASSWORD"/>
-                    <enumeration value="INVALID_OPERATION"/>
-                    <enumeration value="INVALID_OPERATION_WITH_EXPIRED_PASSWORD"/>
-                    <enumeration value="INVALID_QUERY_FILTER_OPERATOR"/>
-                    <enumeration value="INVALID_QUERY_LOCATOR"/>
-                    <enumeration value="INVALID_QUERY_SCOPE"/>
-                    <enumeration value="INVALID_REPLICATION_DATE"/>
-                    <enumeration value="INVALID_SEARCH"/>
-                    <enumeration value="INVALID_SEARCH_SCOPE"/>
-                    <enumeration value="INVALID_SESSION_ID"/>
-                    <enumeration value="INVALID_SOAP_HEADER"/>
-                    <enumeration value="INVALID_SSO_GATEWAY_URL"/>
-                    <enumeration value="INVALID_TYPE"/>
-                    <enumeration value="INVALID_TYPE_FOR_OPERATION"/>
-                    <enumeration value="LIMIT_EXCEEDED"/>
-                    <enumeration value="LOGIN_CHALLENGE_ISSUED"/>
-                    <enumeration value="LOGIN_CHALLENGE_PENDING"/>
-                    <enumeration value="LOGIN_DURING_RESTRICTED_DOMAIN"/>
-                    <enumeration value="LOGIN_DURING_RESTRICTED_TIME"/>
-                    <enumeration value="LOGIN_MUST_USE_SECURITY_TOKEN"/>
-                    <enumeration value="MALFORMED_ID"/>
-                    <enumeration value="MALFORMED_QUERY"/>
-                    <enumeration value="MALFORMED_SEARCH"/>
-                    <enumeration value="MISSING_ARGUMENT"/>
-                    <enumeration value="NOT_MODIFIED"/>
-                    <enumeration value="NO_SOFTPHONE_LAYOUT"/>
-                    <enumeration value="NUMBER_OUTSIDE_VALID_RANGE"/>
-                    <enumeration value="OPERATION_TOO_LARGE"/>
-                    <enumeration value="ORG_LOCKED"/>
-                    <enumeration value="ORG_NOT_OWNED_BY_INSTANCE"/>
-                    <enumeration value="PASSWORD_LOCKOUT"/>
-                    <enumeration value="PORTAL_NO_ACCESS"/>
-                    <enumeration value="QUERY_TIMEOUT"/>
-                    <enumeration value="QUERY_TOO_COMPLICATED"/>
-                    <enumeration value="REQUEST_LIMIT_EXCEEDED"/>
-                    <enumeration value="REQUEST_RUNNING_TOO_LONG"/>
-                    <enumeration value="SERVER_UNAVAILABLE"/>
-                    <enumeration value="SSO_SERVICE_DOWN"/>
-                    <enumeration value="TOO_MANY_APEX_REQUESTS"/>
-                    <enumeration value="TRIAL_EXPIRED"/>
-                    <enumeration value="UNKNOWN_EXCEPTION"/>
-                    <enumeration value="UNSUPPORTED_API_VERSION"/>
-                    <enumeration value="UNSUPPORTED_CLIENT"/>
-                </restriction>
-            </simpleType>
-            <!-- For convenience these QNames are returned in the standard soap faultcode element -->
-            <simpleType name="FaultCode">
-                <restriction base="xsd:QName">
-                    <enumeration value="fns:API_CURRENTLY_DISABLED"/>
-                    <enumeration value="fns:API_DISABLED_FOR_ORG"/>
-                    <enumeration value="fns:CANT_ADD_STANDADRD_PORTAL_USER_TO_TERRITORY"/>
-                    <enumeration value="fns:CANT_ADD_STANDARD_PORTAL_USER_TO_TERRITORY"/>
-                    <enumeration value="fns:CIRCULAR_OBJECT_GRAPH"/>
-                    <enumeration value="fns:CLIENT_NOT_ACCESSIBLE_FOR_USER"/>
-                    <enumeration value="fns:CLIENT_REQUIRE_UPDATE_FOR_USER"/>
-                    <enumeration value="fns:CUSTOM_METADATA_LIMIT_EXCEEDED"/>
-                    <enumeration value="fns:DUPLICATE_VALUE"/>
-                    <enumeration value="fns:EMAIL_BATCH_SIZE_LIMIT_EXCEEDED"/>
-                    <enumeration value="fns:EMAIL_TO_CASE_INVALID_ROUTING"/>
-                    <enumeration value="fns:EMAIL_TO_CASE_LIMIT_EXCEEDED"/>
-                    <enumeration value="fns:EMAIL_TO_CASE_NOT_ENABLED"/>
-                    <enumeration value="fns:EXCEEDED_ID_LIMIT"/>
-                    <enumeration value="fns:EXCEEDED_LEAD_CONVERT_LIMIT"/>
-                    <enumeration value="fns:EXCEEDED_MAX_SIZE_REQUEST"/>
-                    <enumeration value="fns:EXCEEDED_MAX_TYPES_LIMIT"/>
-                    <enumeration value="fns:EXCEEDED_QUOTA"/>
-                    <enumeration value="fns:FUNCTIONALITY_NOT_ENABLED"/>
-                    <enumeration value="fns:INACTIVE_OWNER_OR_USER"/>
-                    <enumeration value="fns:INACTIVE_PORTAL"/>
-                    <enumeration value="fns:INSUFFICIENT_ACCESS"/>
-                    <enumeration value="fns:INVALID_ASSIGNMENT_RULE"/>
-                    <enumeration value="fns:INVALID_BATCH_SIZE"/>
-                    <enumeration value="fns:INVALID_CLIENT"/>
-                    <enumeration value="fns:INVALID_CROSS_REFERENCE_KEY"/>
-                    <enumeration value="fns:INVALID_FIELD"/>
-                    <enumeration value="fns:INVALID_FILTER_LANGUAGE"/>
-                    <enumeration value="fns:INVALID_FILTER_VALUE"/>
-                    <enumeration value="fns:INVALID_ID_FIELD"/>
-                    <enumeration value="fns:INVALID_LOCALE_LANGUAGE"/>
-                    <enumeration value="fns:INVALID_LOCATOR"/>
-                    <enumeration value="fns:INVALID_LOGIN"/>
-                    <enumeration value="fns:INVALID_NEW_PASSWORD"/>
-                    <enumeration value="fns:INVALID_OPERATION"/>
-                    <enumeration value="fns:INVALID_OPERATION_WITH_EXPIRED_PASSWORD"/>
-                    <enumeration value="fns:INVALID_QUERY_FILTER_OPERATOR"/>
-                    <enumeration value="fns:INVALID_QUERY_LOCATOR"/>
-                    <enumeration value="fns:INVALID_QUERY_SCOPE"/>
-                    <enumeration value="fns:INVALID_REPLICATION_DATE"/>
-                    <enumeration value="fns:INVALID_SEARCH"/>
-                    <enumeration value="fns:INVALID_SEARCH_SCOPE"/>
-                    <enumeration value="fns:INVALID_SESSION_ID"/>
-                    <enumeration value="fns:INVALID_SOAP_HEADER"/>
-                    <enumeration value="fns:INVALID_SSO_GATEWAY_URL"/>
-                    <enumeration value="fns:INVALID_TYPE"/>
-                    <enumeration value="fns:INVALID_TYPE_FOR_OPERATION"/>
-                    <enumeration value="fns:LIMIT_EXCEEDED"/>
-                    <enumeration value="fns:LOGIN_CHALLENGE_ISSUED"/>
-                    <enumeration value="fns:LOGIN_CHALLENGE_PENDING"/>
-                    <enumeration value="fns:LOGIN_DURING_RESTRICTED_DOMAIN"/>
-                    <enumeration value="fns:LOGIN_DURING_RESTRICTED_TIME"/>
-                    <enumeration value="fns:LOGIN_MUST_USE_SECURITY_TOKEN"/>
-                    <enumeration value="fns:MALFORMED_ID"/>
-                    <enumeration value="fns:MALFORMED_QUERY"/>
-                    <enumeration value="fns:MALFORMED_SEARCH"/>
-                    <enumeration value="fns:MISSING_ARGUMENT"/>
-                    <enumeration value="fns:NOT_MODIFIED"/>
-                    <enumeration value="fns:NO_SOFTPHONE_LAYOUT"/>
-                    <enumeration value="fns:NUMBER_OUTSIDE_VALID_RANGE"/>
-                    <enumeration value="fns:OPERATION_TOO_LARGE"/>
-                    <enumeration value="fns:ORG_LOCKED"/>
-                    <enumeration value="fns:ORG_NOT_OWNED_BY_INSTANCE"/>
-                    <enumeration value="fns:PASSWORD_LOCKOUT"/>
-                    <enumeration value="fns:PORTAL_NO_ACCESS"/>
-                    <enumeration value="fns:QUERY_TIMEOUT"/>
-                    <enumeration value="fns:QUERY_TOO_COMPLICATED"/>
-                    <enumeration value="fns:REQUEST_LIMIT_EXCEEDED"/>
-                    <enumeration value="fns:REQUEST_RUNNING_TOO_LONG"/>
-                    <enumeration value="fns:SERVER_UNAVAILABLE"/>
-                    <enumeration value="fns:SSO_SERVICE_DOWN"/>
-                    <enumeration value="fns:TOO_MANY_APEX_REQUESTS"/>
-                    <enumeration value="fns:TRIAL_EXPIRED"/>
-                    <enumeration value="fns:UNKNOWN_EXCEPTION"/>
-                    <enumeration value="fns:UNSUPPORTED_API_VERSION"/>
-                    <enumeration value="fns:UNSUPPORTED_CLIENT"/>
-                </restriction>
-            </simpleType>
-
-
-            <!-- Fault -->
-            <complexType name="ApiFault">
-                <sequence>
-                    <element name="exceptionCode"    type="fns:ExceptionCode"/>
-                    <element name="exceptionMessage" type="xsd:string"/>
-
-                </sequence>
-            </complexType>
-
-            <element name="fault" type="fns:ApiFault" />
-
-            <complexType name="ApiQueryFault">
-                <complexContent>
-                    <extension base="fns:ApiFault">
-                        <sequence>
-                        <element name="row" type="xsd:int"/>
-                        <element name="column" type="xsd:int"/>
-                        </sequence>
-                    </extension>
-                </complexContent>
-            </complexType>
-
-            <complexType name="LoginFault">
-                <complexContent>
-                    <extension base="fns:ApiFault"/>
-                </complexContent>
-            </complexType>
-            <element name="LoginFault" type="fns:LoginFault"/>
-
-            <complexType name="InvalidQueryLocatorFault">
-                <complexContent>
-                    <extension base="fns:ApiFault"/>
-                </complexContent>
-            </complexType>
-            <element name="InvalidQueryLocatorFault" type="fns:InvalidQueryLocatorFault"/>
-
-            <complexType name="InvalidNewPasswordFault">
-                <complexContent>
-                    <extension base="fns:ApiFault"/>
-                </complexContent>
-            </complexType>
-            <element name="InvalidNewPasswordFault" type="fns:InvalidNewPasswordFault"/>
-
-            <complexType name="InvalidIdFault">
-                <complexContent>
-                    <extension base="fns:ApiFault"/>
-                </complexContent>
-            </complexType>
-            <element name="InvalidIdFault" type="fns:InvalidIdFault"/>
-
-            <complexType name="UnexpectedErrorFault">
-                <complexContent>
-                    <extension base="fns:ApiFault"/>
-                </complexContent>
-            </complexType>
-            <element name="UnexpectedErrorFault" type="fns:UnexpectedErrorFault"/>
-
-            <complexType name="InvalidFieldFault">
-                <complexContent>
-                    <extension base="fns:ApiQueryFault"/>
-                </complexContent>
-            </complexType>
-            <element name="InvalidFieldFault" type="fns:InvalidFieldFault"/>
-
-            <complexType name="InvalidSObjectFault">
-                <complexContent>
-                    <extension base="fns:ApiQueryFault"/>
-                </complexContent>
-            </complexType>
-            <element name="InvalidSObjectFault" type="fns:InvalidSObjectFault"/>
-
-            <complexType name="MalformedQueryFault">
-                <complexContent>
-                    <extension base="fns:ApiQueryFault"/>
-                </complexContent>
-            </complexType>
-            <element name="MalformedQueryFault" type="fns:MalformedQueryFault"/>
-
-            <complexType name="MalformedSearchFault">
-                <complexContent>
-                    <extension base="fns:ApiQueryFault"/>
-                </complexContent>
-            </complexType>
-            <element name="MalformedSearchFault" type="fns:MalformedSearchFault"/>
-
-
-        </schema>
-    </types>
-
-    <!-- Header Message -->
-    <message name="Header">
-        <part element="tns:LoginScopeHeader"             name="LoginScopeHeader"/>
-        <part element="tns:SessionHeader"                name="SessionHeader"/>
-
-        <part element="tns:CallOptions"                  name="CallOptions"/>
-
-        <part element="tns:QueryOptions"                 name="QueryOptions"/>
-        <part element="tns:AssignmentRuleHeader"         name="AssignmentRuleHeader"/>
-        <part element="tns:MruHeader"                    name="MruHeader"/>
-        <part element="tns:EmailHeader"                  name="EmailHeader"/>
-
-        <part element="tns:UserTerritoryDeleteHeader"    name="UserTerritoryDeleteHeader"/>
-
-        <part element="tns:DebuggingHeader"              name="DebuggingHeader"/>
-        <part element="tns:DebuggingInfo"                name="DebuggingInfo"/>
-        <part element="tns:LocaleOptions"                name="LocaleOptions"/>
-    </message>
-
-    <!-- Fault Messages -->
-
-    <message name="ApiFault">
-        <part name="fault" element="fns:fault"/>
-    </message>
-
-    <message name="LoginFault">
-        <part name="fault" element="fns:LoginFault"/>
-    </message>
-    <message name="InvalidQueryLocatorFault">
-        <part name="fault" element="fns:InvalidQueryLocatorFault"/>
-    </message>
-    <message name="InvalidNewPasswordFault">
-        <part name="fault" element="fns:InvalidNewPasswordFault"/>
-    </message>
-    <message name="InvalidIdFault">
-        <part name="fault" element="fns:InvalidIdFault"/>
-    </message>
-    <message name="UnexpectedErrorFault">
-        <part name="fault" element="fns:UnexpectedErrorFault"/>
-    </message>
-    <message name="InvalidFieldFault">
-        <part name="fault" element="fns:InvalidFieldFault"/>
-    </message>
-    <message name="InvalidSObjectFault">
-        <part name="fault" element="fns:InvalidSObjectFault"/>
-    </message>
-    <message name="MalformedQueryFault">
-        <part name="fault" element="fns:MalformedQueryFault"/>
-    </message>
-    <message name="MalformedSearchFault">
-        <part name="fault" element="fns:MalformedSearchFault"/>
-    </message>
-
-
-    <!-- Method Messages -->
-    <message name="loginRequest">
-        <part element="tns:login" name="parameters"/>
-    </message>
-    <message name="loginResponse">
-        <part element="tns:loginResponse" name="parameters"/>
-    </message>
-
-    <message name="describeSObjectRequest">
-        <part element="tns:describeSObject" name="parameters"/>
-    </message>
-    <message name="describeSObjectResponse">
-        <part element="tns:describeSObjectResponse" name="parameters"/>
-    </message>
-
-    <message name="describeSObjectsRequest">
-        <part element="tns:describeSObjects" name="parameters"/>
-    </message>
-    <message name="describeSObjectsResponse">
-        <part element="tns:describeSObjectsResponse" name="parameters"/>
-    </message>
-
-    <message name="describeGlobalRequest">
-        <part element="tns:describeGlobal" name="parameters"/>
-    </message>
-    <message name="describeGlobalResponse">
-        <part element="tns:describeGlobalResponse" name="parameters"/>
-    </message>
-
-    <message name="describeLayoutRequest">
-        <part element="tns:describeLayout" name="parameters"/>
-    </message>
-    <message name="describeLayoutResponse">
-        <part element="tns:describeLayoutResponse" name="parameters"/>
-    </message>
-
-    <message name="describeSoftphoneLayoutRequest">
-        <part element="tns:describeSoftphoneLayout" name="parameters"/>
-    </message>
-    <message name="describeSoftphoneLayoutResponse">
-        <part element="tns:describeSoftphoneLayoutResponse" name="parameters"/>
-    </message>
-
-    <message name="describeTabsRequest">
-        <part element="tns:describeTabs" name="parameters"/>
-    </message>
-    <message name="describeTabsResponse">
-        <part element="tns:describeTabsResponse" name="parameters"/>
-    </message>
-
-    <message name="createRequest">
-        <part element="tns:create" name="parameters"/>
-    </message>
-    <message name="createResponse">
-        <part element="tns:createResponse" name="parameters"/>
-    </message>
-
-    <message name="updateRequest">
-        <part element="tns:update" name="parameters"/>
-    </message>
-    <message name="updateResponse">
-        <part element="tns:updateResponse" name="parameters"/>
-    </message>
-
-    <message name="upsertRequest">
-        <part element="tns:upsert" name="parameters"/>
-    </message>
-    <message name="upsertResponse">
-        <part element="tns:upsertResponse" name="parameters"/>
-    </message>
-
-    <message name="mergeRequest">
-        <part element="tns:merge" name="parameters"/>
-    </message>
-    <message name="mergeResponse">
-        <part element="tns:mergeResponse" name="parameters"/>
-    </message>
-
-    <message name="deleteRequest">
-        <part element="tns:delete" name="parameters"/>
-    </message>
-    <message name="deleteResponse">
-        <part element="tns:deleteResponse" name="parameters"/>
-    </message>
-
-    <message name="undeleteRequest">
-        <part element="tns:undelete" name="parameters"/>
-    </message>
-    <message name="undeleteResponse">
-        <part element="tns:undeleteResponse" name="parameters"/>
-    </message>
-
-    <message name="emptyRecycleBinRequest">
-        <part element="tns:emptyRecycleBin" name="parameters"/>
-    </message>
-    <message name="emptyRecycleBinResponse">
-        <part element="tns:emptyRecycleBinResponse" name="parameters"/>
-    </message>
-
-    <message name="retrieveRequest">
-        <part element="tns:retrieve" name="parameters"/>
-    </message>
-    <message name="retrieveResponse">
-        <part element="tns:retrieveResponse" name="parameters"/>
-    </message>
-
-    <message name="processRequest">
-        <part element="tns:process" name="parameters"/>
-    </message>
-    <message name="processResponse">
-        <part element="tns:processResponse" name="parameters"/>
-    </message>
-
-    <message name="convertLeadRequest">
-        <part element="tns:convertLead" name="parameters"/>
-    </message>
-    <message name="convertLeadResponse">
-        <part element="tns:convertLeadResponse" name="parameters"/>
-    </message>
-
-    <message name="logoutRequest">
-        <part element="tns:logout" name="parameters"/>
-    </message>
-    <message name="logoutResponse">
-        <part element="tns:logoutResponse" name="parameters"/>
-    </message>
-
-    <message name="invalidateSessionsRequest">
-        <part element="tns:invalidateSessions" name="parameters"/>
-    </message>
-    <message name="invalidateSessionsResponse">
-        <part element="tns:invalidateSessionsResponse" name="parameters"/>
-    </message>
-
-    <message name="getDeletedRequest">
-        <part element="tns:getDeleted" name="parameters"/>
-    </message>
-    <message name="getDeletedResponse">
-        <part element="tns:getDeletedResponse" name="parameters"/>
-    </message>
-
-    <message name="getUpdatedRequest">
-        <part element="tns:getUpdated" name="parameters"/>
-    </message>
-    <message name="getUpdatedResponse">
-        <part element="tns:getUpdatedResponse" name="parameters"/>
-    </message>
-
-    <message name="queryRequest">
-        <part element="tns:query" name="parameters"/>
-    </message>
-    <message name="queryResponse">
-        <part element="tns:queryResponse" name="parameters"/>
-    </message>
-
-    <message name="queryAllRequest">
-        <part element="tns:queryAll" name="parameters"/>
-    </message>
-    <message name="queryAllResponse">
-        <part element="tns:queryAllResponse" name="parameters"/>
-    </message>
-
-    <message name="queryMoreRequest">
-        <part element="tns:queryMore" name="parameters"/>
-    </message>
-    <message name="queryMoreResponse">
-        <part element="tns:queryMoreResponse" name="parameters"/>
-    </message>
-
-    <message name="searchRequest">
-        <part element="tns:search" name="parameters"/>
-    </message>
-    <message name="searchResponse">
-        <part element="tns:searchResponse" name="parameters"/>
-    </message>
-
-    <message name="getServerTimestampRequest">
-        <part element="tns:getServerTimestamp" name="parameters"/>
-    </message>
-    <message name="getServerTimestampResponse">
-        <part element="tns:getServerTimestampResponse" name="parameters"/>
-    </message>
-
-    <message name="setPasswordRequest">
-        <part element="tns:setPassword" name="parameters"/>
-    </message>
-    <message name="setPasswordResponse">
-        <part element="tns:setPasswordResponse" name="parameters"/>
-    </message>
-
-    <message name="resetPasswordRequest">
-        <part element="tns:resetPassword" name="parameters"/>
-    </message>
-    <message name="resetPasswordResponse">
-        <part element="tns:resetPasswordResponse" name="parameters"/>
-    </message>
-
-    <message name="getUserInfoRequest">
-        <part element="tns:getUserInfo" name="parameters"/>
-    </message>
-    <message name="getUserInfoResponse">
-        <part element="tns:getUserInfoResponse" name="parameters"/>
-    </message>
-
-    <message name="sendEmailRequest">
-        <part element="tns:sendEmail" name="parameters"/>
-    </message>
-    <message name="sendEmailResponse">
-        <part element="tns:sendEmailResponse" name="parameters"/>
-    </message>
-
-
-
-    <!-- Soap PortType -->
-    <portType name="Soap">
-        <operation name="login">
-            <documentation>Login to the Salesforce.com SOAP Api</documentation>
-            <input  message="tns:loginRequest"/>
-            <output message="tns:loginResponse"/>
-            <fault  message="tns:LoginFault" name="LoginFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-        </operation>
-
-        <operation name="describeSObject">
-            <documentation>Describe an sObject</documentation>
-            <input  message="tns:describeSObjectRequest"/>
-            <output message="tns:describeSObjectResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="describeSObjects">
-            <documentation>Describe a number sObjects</documentation>
-            <input  message="tns:describeSObjectsRequest"/>
-            <output message="tns:describeSObjectsResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="describeGlobal">
-            <documentation>Describe the Global state</documentation>
-            <input  message="tns:describeGlobalRequest"/>
-            <output message="tns:describeGlobalResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="describeLayout">
-            <documentation>Describe the layout of an sObject</documentation>
-            <input  message="tns:describeLayoutRequest"/>
-            <output message="tns:describeLayoutResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-        </operation>
-
-        <operation name="describeSoftphoneLayout">
-            <documentation>Describe the layout of the SoftPhone</documentation>
-            <input  message="tns:describeSoftphoneLayoutRequest"/>
-            <output message="tns:describeSoftphoneLayoutResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="describeTabs">
-            <documentation>Describe the tabs that appear on a users page</documentation>
-            <input  message="tns:describeTabsRequest"/>
-            <output message="tns:describeTabsResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="create">
-            <documentation>Create a set of new sObjects</documentation>
-            <input  message="tns:createRequest"/>
-            <output message="tns:createResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-        </operation>
-
-        <operation name="update">
-            <documentation>Update a set of sObjects</documentation>
-            <input  message="tns:updateRequest"/>
-            <output message="tns:updateResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-        </operation>
-
-        <operation name="upsert">
-            <documentation>Update or insert a set of sObjects based on object id</documentation>
-            <input  message="tns:upsertRequest"/>
-            <output message="tns:upsertResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-        </operation>
-
-        <operation name="merge">
-            <documentation>Merge and update a set of sObjects based on object id</documentation>
-            <input  message="tns:mergeRequest"/>
-            <output message="tns:mergeResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-        </operation>
-
-        <operation name="delete">
-            <documentation>Delete a set of sObjects</documentation>
-            <input  message="tns:deleteRequest"/>
-            <output message="tns:deleteResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="undelete">
-            <documentation>Undelete a set of sObjects</documentation>
-            <input  message="tns:undeleteRequest"/>
-            <output message="tns:undeleteResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="emptyRecycleBin">
-            <documentation>Empty a set of sObjects from the recycle bin</documentation>
-            <input  message="tns:emptyRecycleBinRequest"/>
-            <output message="tns:emptyRecycleBinResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="retrieve">
-            <documentation>Get a set of sObjects</documentation>
-            <input  message="tns:retrieveRequest"/>
-            <output message="tns:retrieveResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-            <fault  message="tns:MalformedQueryFault" name="MalformedQueryFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-        </operation>
-
-        <operation name="process">
-            <documentation>Submit an entity to a workflow process or process a workitem</documentation>
-            <input  message="tns:processRequest"/>
-            <output message="tns:processResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-        </operation>
-
-        <operation name="convertLead">
-            <documentation>convert a set of leads</documentation>
-            <input  message="tns:convertLeadRequest"/>
-            <output message="tns:convertLeadResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="logout">
-            <documentation>Logout the current user, invalidating the current session.</documentation>
-            <input  message="tns:logoutRequest"/>
-            <output message="tns:logoutResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="invalidateSessions">
-            <documentation>Logs out and invalidates session ids</documentation>
-            <input  message="tns:invalidateSessionsRequest"/>
-            <output message="tns:invalidateSessionsResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="getDeleted">
-            <documentation>Get the IDs for deleted sObjects</documentation>
-            <input  message="tns:getDeletedRequest"/>
-            <output message="tns:getDeletedResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="getUpdated">
-            <documentation>Get the IDs for updated sObjects</documentation>
-            <input  message="tns:getUpdatedRequest"/>
-            <output message="tns:getUpdatedResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="query">
-            <documentation>Create a Query Cursor</documentation>
-            <input  message="tns:queryRequest"/>
-            <output message="tns:queryResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-            <fault  message="tns:MalformedQueryFault" name="MalformedQueryFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidQueryLocatorFault" name="InvalidQueryLocatorFault"/>
-        </operation>
-
-        <operation name="queryAll">
-            <documentation>Create a Query Cursor, including deleted sObjects</documentation>
-            <input  message="tns:queryAllRequest"/>
-            <output message="tns:queryAllResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-            <fault  message="tns:MalformedQueryFault" name="MalformedQueryFault"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidQueryLocatorFault" name="InvalidQueryLocatorFault"/>
-        </operation>
-
-        <operation name="queryMore">
-            <documentation>Gets the next batch of sObjects from a query</documentation>
-            <input  message="tns:queryMoreRequest"/>
-            <output message="tns:queryMoreResponse"/>
-            <fault  message="tns:InvalidQueryLocatorFault" name="InvalidQueryLocatorFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-        </operation>
-
-        <operation name="search">
-            <documentation>Search for sObjects</documentation>
-            <input  message="tns:searchRequest"/>
-            <output message="tns:searchResponse"/>
-            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
-            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
-            <fault  message="tns:MalformedSearchFault" name="MalformedSearchFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="getServerTimestamp">
-            <documentation>Gets server timestamp</documentation>
-            <input  message="tns:getServerTimestampRequest"/>
-            <output message="tns:getServerTimestampResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="setPassword">
-            <documentation>Set a user's password</documentation>
-            <input  message="tns:setPasswordRequest"/>
-            <output message="tns:setPasswordResponse"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:InvalidNewPasswordFault" name="InvalidNewPasswordFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="resetPassword">
-            <documentation>Reset a user's password</documentation>
-            <input  message="tns:resetPasswordRequest"/>
-            <output message="tns:resetPasswordResponse"/>
-            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="getUserInfo">
-            <documentation>Returns standard information relevant to the current user</documentation>
-            <input  message="tns:getUserInfoRequest"/>
-            <output message="tns:getUserInfoResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-        <operation name="sendEmail">
-            <documentation>Send outbound email</documentation>
-            <input  message="tns:sendEmailRequest"/>
-            <output message="tns:sendEmailResponse"/>
-            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
-        </operation>
-
-    </portType>
-
-    <!-- Soap Binding -->
-    <binding name="SoapBinding" type="tns:Soap">
-        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
-        <operation name="login">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="LoginScopeHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="LoginFault">
-                <soap:fault name="LoginFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="describeSObject">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="LocaleOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="describeSObjects">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="LocaleOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="describeGlobal">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="describeLayout">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="describeSoftphoneLayout">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="describeTabs">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="create">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
-                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="update">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
-                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="upsert">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
-                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="merge">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
-                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="delete">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="UserTerritoryDeleteHeader"/>
-                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="undelete">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="emptyRecycleBin">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="retrieve">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
-                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-            <fault name="MalformedQueryFault">
-                <soap:fault name="MalformedQueryFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="process">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="convertLead">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="logout">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="invalidateSessions">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="getDeleted">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="getUpdated">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="query">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
-                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-            <fault name="MalformedQueryFault">
-                <soap:fault name="MalformedQueryFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidQueryLocatorFault">
-                <soap:fault name="InvalidQueryLocatorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="queryAll">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-            <fault name="MalformedQueryFault">
-                <soap:fault name="MalformedQueryFault" use="literal"/>
-            </fault>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidQueryLocatorFault">
-                <soap:fault name="InvalidQueryLocatorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="queryMore">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidQueryLocatorFault">
-                <soap:fault name="InvalidQueryLocatorFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="search">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidSObjectFault">
-                <soap:fault name="InvalidSObjectFault" use="literal"/>
-            </fault>
-            <fault name="InvalidFieldFault">
-                <soap:fault name="InvalidFieldFault" use="literal"/>
-            </fault>
-            <fault name="MalformedSearchFault">
-                <soap:fault name="MalformedSearchFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="getServerTimestamp">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="setPassword">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="InvalidNewPasswordFault">
-                <soap:fault name="InvalidNewPasswordFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="resetPassword">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="InvalidIdFault">
-                <soap:fault name="InvalidIdFault" use="literal"/>
-            </fault>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="getUserInfo">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-        <operation name="sendEmail">
-            <soap:operation soapAction=""/>
-            <input>
-                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
-                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
-                <soap:body parts="parameters" use="literal"/>
-            </input>
-            <output>
-                <soap:body use="literal"/>
-            </output>
-            <fault name="UnexpectedErrorFault">
-                <soap:fault name="UnexpectedErrorFault" use="literal"/>
-            </fault>
-        </operation>
-
-    </binding>
-
-    <!-- Soap Service Endpoint -->
-    <service name="SforceService">
-        <documentation>Sforce SOAP API</documentation>
-        <port binding="tns:SoapBinding" name="Soap">
-            <soap:address location="https://www.salesforce.com/services/Soap/u/14.0"/>
-        </port>
-    </service>
-</definitions>
-

Added: trunk/connectors/salesforce-api/src/main/resources/partner_v15.wsdl
===================================================================
--- trunk/connectors/salesforce-api/src/main/resources/partner_v15.wsdl	                        (rev 0)
+++ trunk/connectors/salesforce-api/src/main/resources/partner_v15.wsdl	2009-04-15 21:04:19 UTC (rev 782)
@@ -0,0 +1,2852 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<!--
+Salesforce.com Partner Web Services API Version 15.0
+Generated on 2009-04-15 20:55:33 +0000.
+
+Copyright 1999-2009 salesforce.com, inc.
+All Rights Reserved
+-->
+
+<definitions targetNamespace="urn:partner.soap.sforce.com"
+             xmlns="http://schemas.xmlsoap.org/wsdl/"
+             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+             xmlns:fns="urn:fault.partner.soap.sforce.com"
+             xmlns:tns="urn:partner.soap.sforce.com"
+             xmlns:ens="urn:sobject.partner.soap.sforce.com">
+    <types>
+
+        <schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:sobject.partner.soap.sforce.com">
+
+            <import namespace="urn:partner.soap.sforce.com"/>
+
+
+            <!-- Dynamic sObject -->
+            <complexType name="sObject">
+                <sequence>
+                    <element name="type"               type="xsd:string"/>
+                    <element name="fieldsToNull"       type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="Id"                 type="tns:ID" nillable="true" />
+                    <any namespace="##targetNamespace" minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
+                </sequence>
+            </complexType>
+
+        </schema>
+
+        <schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:partner.soap.sforce.com">
+
+            <import namespace="urn:sobject.partner.soap.sforce.com"/>
+
+            <!-- Our simple ID Type -->
+            <simpleType name="ID">
+                <restriction base="xsd:string">
+                    <length value="18"/>
+                    <pattern value='[a-zA-Z0-9]{18}'/>
+                </restriction>
+            </simpleType>
+
+            <simpleType name="QueryLocator">
+                <restriction base="xsd:string"/>
+            </simpleType>
+
+            <!-- Shared Result Types -->
+            <complexType name="QueryResult">
+                <sequence>
+                    <element name="done"         type="xsd:boolean"/>
+                    <element name="queryLocator" type="tns:QueryLocator" nillable="true"/>
+                    <element name="records"      type="ens:sObject" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="size"         type="xsd:int"/>
+                </sequence>
+            </complexType>
+
+
+
+            <!-- Search Result -->
+            <complexType name="SearchResult">
+                <sequence>
+                    <element name="searchRecords"  minOccurs="0" maxOccurs="unbounded" type="tns:SearchRecord"/>
+                    <element name="sforceReserved" minOccurs="0" maxOccurs="1" type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="SearchRecord">
+                <sequence>
+                    <element name="record" type="ens:sObject"/>
+                </sequence>
+            </complexType>
+
+            <!-- GetUpdated Result -->
+            <complexType name="GetUpdatedResult">
+                <sequence>
+                    <element name="ids" minOccurs="0" maxOccurs="unbounded" type="tns:ID"/>
+                    <element name="latestDateCovered" type="xsd:dateTime"/>
+                    <element name="sforceReserved" minOccurs="0" maxOccurs="1" type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <!-- GetDeleted Result -->
+            <complexType name="GetDeletedResult">
+                <sequence>
+                    <element name="deletedRecords" minOccurs="0" maxOccurs="unbounded" type="tns:DeletedRecord"/>
+                    <element name="earliestDateAvailable" type="xsd:dateTime"/>
+                    <element name="latestDateCovered" type="xsd:dateTime"/>
+                    <element name="sforceReserved" minOccurs="0" maxOccurs="1" type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DeletedRecord">
+                <sequence>
+                    <element name="deletedDate" type="xsd:dateTime"/>
+                    <element name="id"          type="tns:ID"/>
+                </sequence>
+            </complexType>
+
+
+            <complexType name="GetServerTimestampResult">
+                <sequence>
+                    <element name="timestamp" type="xsd:dateTime"/>
+                </sequence>
+            </complexType>
+
+
+            <!-- InvalidateSessions Result -->
+            <complexType name="InvalidateSessionsResult">
+                <sequence>
+                    <element name="errors"  type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="success"   type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="SetPasswordResult">
+            </complexType>
+
+            <complexType name="ResetPasswordResult">
+                <sequence>
+                    <element name="password" type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="GetUserInfoResult">
+                <sequence>
+                    <element name="accessibilityMode"          type="xsd:boolean"/>
+                    <element name="currencySymbol"             type="xsd:string" nillable="true"/>
+                    <element name="orgDefaultCurrencyIsoCode"  type="xsd:string" nillable="true"/>
+                    <element name="orgHasPersonAccounts"       type="xsd:boolean"/>
+                    <element name="organizationId"             type="tns:ID"/>
+                    <element name="organizationMultiCurrency"  type="xsd:boolean"/>
+                    <element name="organizationName"           type="xsd:string"/>
+                    <element name="profileId"                  type="tns:ID"/>
+                    <element name="roleId"                     type="tns:ID" nillable="true"/>
+                    <element name="userDefaultCurrencyIsoCode" type="xsd:string" nillable="true"/>
+                    <element name="userEmail"                  type="xsd:string"/>
+                    <element name="userFullName"               type="xsd:string"/>
+                    <element name="userId"                     type="tns:ID"/>
+                    <element name="userLanguage"               type="xsd:string"/>
+                    <element name="userLocale"                 type="xsd:string"/>
+                    <element name="userName"                   type="xsd:string"/>
+                    <element name="userTimeZone"               type="xsd:string"/>
+                    <element name="userType"                   type="xsd:string"/>
+                    <element name="userUiSkin"                 type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="LoginResult">
+                <sequence>
+                    <element name="metadataServerUrl" type="xsd:string" nillable="true"/>
+                    <element name="passwordExpired"   type="xsd:boolean" />
+                    <element name="sandbox"      type="xsd:boolean"/>
+                    <element name="serverUrl"         type="xsd:string" nillable="true"/>
+                    <element name="sessionId"         type="xsd:string" nillable="true"/>
+
+                    <element name="userId"           type="tns:ID" nillable="true"/>
+                    <element name="userInfo"         type="tns:GetUserInfoResult" minOccurs="0"/>
+                </sequence>
+            </complexType>
+
+            <simpleType name="StatusCode">
+                <restriction base="xsd:string">
+                    <enumeration value="ALREADY_IN_PROCESS"/>
+                    <enumeration value="ASSIGNEE_TYPE_REQUIRED"/>
+                    <enumeration value="BAD_CUSTOM_ENTITY_PARENT_DOMAIN"/>
+                    <enumeration value="BCC_NOT_ALLOWED_IF_BCC_COMPLIANCE_ENABLED"/>
+                    <enumeration value="CANNOT_CASCADE_PRODUCT_ACTIVE"/>
+                    <enumeration value="CANNOT_CHANGE_FIELD_TYPE_OF_APEX_REFERENCED_FIELD"/>
+                    <enumeration value="CANNOT_CREATE_ANOTHER_MANAGED_PACKAGE"/>
+                    <enumeration value="CANNOT_DEACTIVATE_DIVISION"/>
+                    <enumeration value="CANNOT_DELETE_LAST_DATED_CONVERSION_RATE"/>
+                    <enumeration value="CANNOT_DELETE_MANAGED_OBJECT"/>
+                    <enumeration value="CANNOT_DISABLE_LAST_ADMIN"/>
+                    <enumeration value="CANNOT_ENABLE_IP_RESTRICT_REQUESTS"/>
+                    <enumeration value="CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY"/>
+                    <enumeration value="CANNOT_MODIFY_MANAGED_OBJECT"/>
+                    <enumeration value="CANNOT_RENAME_APEX_REFERENCED_FIELD"/>
+                    <enumeration value="CANNOT_RENAME_APEX_REFERENCED_OBJECT"/>
+                    <enumeration value="CANNOT_REPARENT_RECORD"/>
+                    <enumeration value="CANNOT_UPDATE_CONVERTED_LEAD"/>
+                    <enumeration value="CANT_DISABLE_CORP_CURRENCY"/>
+                    <enumeration value="CANT_UNSET_CORP_CURRENCY"/>
+                    <enumeration value="CHILD_SHARE_FAILS_PARENT"/>
+                    <enumeration value="CIRCULAR_DEPENDENCY"/>
+                    <enumeration value="CUSTOM_CLOB_FIELD_LIMIT_EXCEEDED"/>
+                    <enumeration value="CUSTOM_ENTITY_OR_FIELD_LIMIT"/>
+                    <enumeration value="CUSTOM_FIELD_INDEX_LIMIT_EXCEEDED"/>
+                    <enumeration value="CUSTOM_INDEX_EXISTS"/>
+                    <enumeration value="CUSTOM_LINK_LIMIT_EXCEEDED"/>
+                    <enumeration value="CUSTOM_TAB_LIMIT_EXCEEDED"/>
+                    <enumeration value="DELETE_FAILED"/>
+                    <enumeration value="DELETE_REQUIRED_ON_CASCADE"/>
+                    <enumeration value="DEPENDENCY_EXISTS"/>
+                    <enumeration value="DUPLICATE_CASE_SOLUTION"/>
+                    <enumeration value="DUPLICATE_COMM_NICKNAME"/>
+                    <enumeration value="DUPLICATE_CUSTOM_ENTITY_DEFINITION"/>
+                    <enumeration value="DUPLICATE_CUSTOM_TAB_MOTIF"/>
+                    <enumeration value="DUPLICATE_DEVELOPER_NAME"/>
+                    <enumeration value="DUPLICATE_EXTERNAL_ID"/>
+                    <enumeration value="DUPLICATE_MASTER_LABEL"/>
+                    <enumeration value="DUPLICATE_USERNAME"/>
+                    <enumeration value="DUPLICATE_VALUE"/>
+                    <enumeration value="EMAIL_NOT_PROCESSED_DUE_TO_PRIOR_ERROR"/>
+                    <enumeration value="EMPTY_SCONTROL_FILE_NAME"/>
+                    <enumeration value="ENTITY_FAILED_IFLASTMODIFIED_ON_UPDATE"/>
+                    <enumeration value="ENTITY_IS_ARCHIVED"/>
+                    <enumeration value="ENTITY_IS_DELETED"/>
+                    <enumeration value="ENTITY_IS_LOCKED"/>
+                    <enumeration value="ERROR_IN_MAILER"/>
+                    <enumeration value="FAILED_ACTIVATION"/>
+                    <enumeration value="FIELD_CUSTOM_VALIDATION_EXCEPTION"/>
+                    <enumeration value="FIELD_INTEGRITY_EXCEPTION"/>
+                    <enumeration value="HTML_FILE_UPLOAD_NOT_ALLOWED"/>
+                    <enumeration value="IMAGE_TOO_LARGE"/>
+                    <enumeration value="INACTIVE_OWNER_OR_USER"/>
+                    <enumeration value="INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY"/>
+                    <enumeration value="INSUFFICIENT_ACCESS_OR_READONLY"/>
+                    <enumeration value="INVALID_ACCESS_LEVEL"/>
+                    <enumeration value="INVALID_ARGUMENT_TYPE"/>
+                    <enumeration value="INVALID_ASSIGNEE_TYPE"/>
+                    <enumeration value="INVALID_ASSIGNMENT_RULE"/>
+                    <enumeration value="INVALID_BATCH_OPERATION"/>
+                    <enumeration value="INVALID_CREDIT_CARD_INFO"/>
+                    <enumeration value="INVALID_CROSS_REFERENCE_KEY"/>
+                    <enumeration value="INVALID_CROSS_REFERENCE_TYPE_FOR_FIELD"/>
+                    <enumeration value="INVALID_CURRENCY_CONV_RATE"/>
+                    <enumeration value="INVALID_CURRENCY_CORP_RATE"/>
+                    <enumeration value="INVALID_CURRENCY_ISO"/>
+                    <enumeration value="INVALID_EMAIL_ADDRESS"/>
+                    <enumeration value="INVALID_EMPTY_KEY_OWNER"/>
+                    <enumeration value="INVALID_FIELD"/>
+                    <enumeration value="INVALID_FIELD_FOR_INSERT_UPDATE"/>
+                    <enumeration value="INVALID_FIELD_WHEN_USING_TEMPLATE"/>
+                    <enumeration value="INVALID_FILTER_ACTION"/>
+                    <enumeration value="INVALID_GOOGLE_DOCS_URL"/>
+                    <enumeration value="INVALID_ID_FIELD"/>
+                    <enumeration value="INVALID_INET_ADDRESS"/>
+                    <enumeration value="INVALID_LINEITEM_CLONE_STATE"/>
+                    <enumeration value="INVALID_MASTER_OR_TRANSLATED_SOLUTION"/>
+                    <enumeration value="INVALID_OPERATION"/>
+                    <enumeration value="INVALID_OPERATOR"/>
+                    <enumeration value="INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST"/>
+                    <enumeration value="INVALID_PARTNER_NETWORK_STATUS"/>
+                    <enumeration value="INVALID_PERSON_ACCOUNT_OPERATION"/>
+                    <enumeration value="INVALID_SAVE_AS_ACTIVITY_FLAG"/>
+                    <enumeration value="INVALID_SESSION_ID"/>
+                    <enumeration value="INVALID_SETUP_OWNER"/>
+                    <enumeration value="INVALID_STATUS"/>
+                    <enumeration value="INVALID_TYPE"/>
+                    <enumeration value="INVALID_TYPE_FOR_OPERATION"/>
+                    <enumeration value="INVALID_TYPE_ON_FIELD_IN_RECORD"/>
+                    <enumeration value="IP_RANGE_LIMIT_EXCEEDED"/>
+                    <enumeration value="LICENSE_LIMIT_EXCEEDED"/>
+                    <enumeration value="LIMIT_EXCEEDED"/>
+                    <enumeration value="MALFORMED_ID"/>
+                    <enumeration value="MANAGER_NOT_DEFINED"/>
+                    <enumeration value="MASSMAIL_RETRY_LIMIT_EXCEEDED"/>
+                    <enumeration value="MASS_MAIL_LIMIT_EXCEEDED"/>
+                    <enumeration value="MAXIMUM_CCEMAILS_EXCEEDED"/>
+                    <enumeration value="MAXIMUM_DASHBOARD_COMPONENTS_EXCEEDED"/>
+                    <enumeration value="MAXIMUM_HIERARCHY_LEVELS_REACHED"/>
+                    <enumeration value="MAXIMUM_SIZE_OF_ATTACHMENT"/>
+                    <enumeration value="MAXIMUM_SIZE_OF_DOCUMENT"/>
+                    <enumeration value="MAX_ACTIONS_PER_RULE_EXCEEDED"/>
+                    <enumeration value="MAX_ACTIVE_RULES_EXCEEDED"/>
+                    <enumeration value="MAX_APPROVAL_STEPS_EXCEEDED"/>
+                    <enumeration value="MAX_FORMULAS_PER_RULE_EXCEEDED"/>
+                    <enumeration value="MAX_RULES_EXCEEDED"/>
+                    <enumeration value="MAX_RULE_ENTRIES_EXCEEDED"/>
+                    <enumeration value="MAX_TASK_DESCRIPTION_EXCEEEDED"/>
+                    <enumeration value="MAX_TM_RULES_EXCEEDED"/>
+                    <enumeration value="MAX_TM_RULE_ITEMS_EXCEEDED"/>
+                    <enumeration value="MERGE_FAILED"/>
+                    <enumeration value="MISSING_ARGUMENT"/>
+                    <enumeration value="MIXED_DML_OPERATION"/>
+                    <enumeration value="NONUNIQUE_SHIPPING_ADDRESS"/>
+                    <enumeration value="NO_APPLICABLE_PROCESS"/>
+                    <enumeration value="NO_ATTACHMENT_PERMISSION"/>
+                    <enumeration value="NO_MASS_MAIL_PERMISSION"/>
+                    <enumeration value="NUMBER_OUTSIDE_VALID_RANGE"/>
+                    <enumeration value="NUM_HISTORY_FIELDS_BY_SOBJECT_EXCEEDED"/>
+                    <enumeration value="OPTED_OUT_OF_MASS_MAIL"/>
+                    <enumeration value="PACKAGE_LICENSE_REQUIRED"/>
+                    <enumeration value="PORTAL_USER_ALREADY_EXISTS_FOR_CONTACT"/>
+                    <enumeration value="PRIVATE_CONTACT_ON_ASSET"/>
+                    <enumeration value="RECORD_IN_USE_BY_WORKFLOW"/>
+                    <enumeration value="REQUEST_RUNNING_TOO_LONG"/>
+                    <enumeration value="REQUIRED_FIELD_MISSING"/>
+                    <enumeration value="SELF_REFERENCE_FROM_TRIGGER"/>
+                    <enumeration value="SHARE_NEEDED_FOR_CHILD_OWNER"/>
+                    <enumeration value="STANDARD_PRICE_NOT_DEFINED"/>
+                    <enumeration value="STORAGE_LIMIT_EXCEEDED"/>
+                    <enumeration value="STRING_TOO_LONG"/>
+                    <enumeration value="TABSET_LIMIT_EXCEEDED"/>
+                    <enumeration value="TEMPLATE_NOT_ACTIVE"/>
+                    <enumeration value="TERRITORY_REALIGN_IN_PROGRESS"/>
+                    <enumeration value="TEXT_DATA_OUTSIDE_SUPPORTED_CHARSET"/>
+                    <enumeration value="TOO_MANY_APEX_REQUESTS"/>
+                    <enumeration value="TOO_MANY_ENUM_VALUE"/>
+                    <enumeration value="TRANSFER_REQUIRES_READ"/>
+                    <enumeration value="UNABLE_TO_LOCK_ROW"/>
+                    <enumeration value="UNAVAILABLE_RECORDTYPE_EXCEPTION"/>
+                    <enumeration value="UNDELETE_FAILED"/>
+                    <enumeration value="UNKNOWN_EXCEPTION"/>
+                    <enumeration value="UNSPECIFIED_EMAIL_ADDRESS"/>
+                    <enumeration value="UNSUPPORTED_APEX_TRIGGER_OPERATON"/>
+                    <enumeration value="WEBLINK_SIZE_LIMIT_EXCEEDED"/>
+                    <enumeration value="WRONG_CONTROLLER_TYPE"/>
+                </restriction>
+            </simpleType>
+
+
+            <complexType name="Error">
+                <sequence>
+                    <element name="fields"     type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="message"    type="xsd:string"/>
+                    <element name="statusCode" type="tns:StatusCode"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="SendEmailError">
+                <sequence>
+                    <element name="fields"     type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="message"    type="xsd:string"/>
+                    <element name="statusCode" type="tns:StatusCode"/>
+                    <element name="targetObjectId"     type="tns:ID"  nillable="true"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="SaveResult">
+                <sequence>
+                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="id"        type="tns:ID" nillable="true"/>
+                    <element name="success"   type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="UpsertResult">
+                <sequence>
+                    <element name="created"  type="xsd:boolean"/>
+                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="id"       type="tns:ID" nillable="true"/>
+                    <element name="success"   type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="MergeRequest">
+                <sequence>
+                    <element name="masterRecord" type="ens:sObject"/>
+                    <element name="recordToMergeIds" type="tns:ID" minOccurs="1" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="MergeResult">
+                <sequence>
+                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="id"        type="tns:ID" nillable="true"/>
+                    <element name="mergedRecordIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="success"   type="xsd:boolean"/>
+                    <element name="updatedRelatedIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="ProcessRequest">
+                <sequence>
+                    <element name="comments"       type="xsd:string" nillable="true"/>
+                    <element name="nextApproverIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="ProcessSubmitRequest">
+                <complexContent>
+                    <extension base="tns:ProcessRequest">
+                        <sequence>
+                            <element name="objectId"     type="tns:ID"/>
+                        </sequence>
+                    </extension>
+                </complexContent>
+            </complexType>
+
+            <complexType name="ProcessWorkitemRequest">
+                <complexContent>
+                    <extension base="tns:ProcessRequest">
+                        <sequence>
+                            <element name="action"         type="xsd:string"/>
+                            <element name="workitemId"     type="tns:ID"/>
+                        </sequence>
+                    </extension>
+                </complexContent>
+            </complexType>
+
+            <complexType name="ProcessResult">
+                <sequence>
+                    <element name="actorIds"        type="tns:ID" nillable="false" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="entityId"        type="tns:ID" nillable="true"/>
+                    <element name="errors"          type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="instanceId"      type="tns:ID" nillable="true"/>
+                    <element name="instanceStatus"  type="xsd:string" nillable="true"/>
+                    <element name="newWorkitemIds"  type="tns:ID" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="success"         type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DeleteResult">
+                <sequence>
+                    <element name="errors"    type="tns:Error" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="id"        type="tns:ID" nillable="true"/>
+                    <element name="success"   type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="UndeleteResult">
+                <sequence>
+                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="id"        type="tns:ID" nillable="true"/>
+                    <element name="success"   type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="EmptyRecycleBinResult">
+                <sequence>
+                    <element name="errors"    type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="id"        type="tns:ID" nillable="true"/>
+                    <element name="success"   type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="LeadConvert">
+                <sequence>
+                    <element name="accountId"              type="tns:ID" nillable="true"/>
+                    <element name="contactId"              type="tns:ID" nillable="true"/>
+                    <element name="convertedStatus"        type="xsd:string"/>
+                    <element name="doNotCreateOpportunity" type="xsd:boolean"/>
+                    <element name="leadId"                 type="tns:ID"/>
+                    <element name="opportunityName"        type="xsd:string" nillable="true"/>
+                    <element name="overwriteLeadSource"    type="xsd:boolean"/>
+                    <element name="ownerId"                type="tns:ID"     nillable="true"/>
+                    <element name="sendNotificationEmail"  type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="LeadConvertResult">
+                <sequence>
+                    <element name="accountId"     type="tns:ID" nillable="true"/>
+                    <element name="contactId"     type="tns:ID" nillable="true"/>
+                    <element name="errors"        type="tns:Error" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="leadId"        type="tns:ID" nillable="true"/>
+                    <element name="opportunityId" type="tns:ID" nillable="true"/>
+                    <element name="success"       type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeSObjectResult">
+                <sequence>
+                    <element name="activateable"        type="xsd:boolean"/>
+                    <element name="childRelationships"  type="tns:ChildRelationship" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="createable"          type="xsd:boolean"/>
+                    <element name="custom"              type="xsd:boolean"/>
+                    <element name="deletable"           type="xsd:boolean"/>
+                    <element name="fields"              type="tns:Field" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="keyPrefix"           type="xsd:string" nillable="true"/>
+                    <element name="label"               type="xsd:string"/>
+                    <element name="labelPlural"         type="xsd:string"/>
+                    <element name="layoutable"          type="xsd:boolean"/>
+                    <element name="mergeable"           type="xsd:boolean"/>
+                    <element name="name"                type="xsd:string"/>
+                    <element name="queryable"           type="xsd:boolean"/>
+                    <element name="recordTypeInfos"     type="tns:RecordTypeInfo" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="replicateable"       type="xsd:boolean"/>
+                    <element name="retrieveable"        type="xsd:boolean"/>
+                    <element name="searchable"          type="xsd:boolean" />
+                    <element name="triggerable"         type="xsd:boolean" minOccurs="0"/>
+                    <element name="undeletable"         type="xsd:boolean"/>
+                    <element name="updateable"          type="xsd:boolean"/>
+                    <element name="urlDetail"           type="xsd:string" nillable="true"/>
+                    <element name="urlEdit"             type="xsd:string" nillable="true"/>
+                    <element name="urlNew"              type="xsd:string" nillable="true"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="ChildRelationship">
+                <sequence>
+                    <element name="cascadeDelete"    type="xsd:boolean"/>
+                    <element name="childSObject"     type="xsd:string"/>
+                    <element name="field"            type="xsd:string"/>
+                    <element name="relationshipName" type="xsd:string" minOccurs="0"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeGlobalResult">
+                <sequence>
+                    <element name="encoding"       type="xsd:string" nillable="true"/>
+                    <element name="maxBatchSize"   type="xsd:int"/>
+                    <element name="types"          type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <simpleType name="fieldType">
+                <restriction base="xsd:string">
+                    <enumeration value="string"/>
+                    <enumeration value="picklist"/>
+                    <enumeration value="multipicklist"/>
+                    <enumeration value="combobox"/>
+                    <enumeration value="reference"/>
+                    <enumeration value="base64"/>
+                    <enumeration value="boolean"/>
+                    <enumeration value="currency"/>
+                    <enumeration value="textarea"/>
+                    <enumeration value="int"/>
+                    <enumeration value="double"/>
+                    <enumeration value="percent"/>
+                    <enumeration value="phone"/>
+                    <enumeration value="id"/>
+                    <enumeration value="date"/>
+                    <enumeration value="datetime"/>
+                    <enumeration value="time"/>
+                    <enumeration value="url"/>
+                    <enumeration value="email"/>
+                    <enumeration value="encryptedstring"/>
+                    <enumeration value="anyType"/> <!-- can be string, picklist, reference, boolean, currency, int, double, percent, id, date, datetime, url, email -->
+                </restriction>
+            </simpleType>
+
+            <simpleType name="soapType">
+                <restriction base="xsd:string">
+                    <enumeration value="tns:ID"/>
+                    <enumeration value="xsd:base64Binary"/>
+                    <enumeration value="xsd:boolean"/>
+                    <enumeration value="xsd:double"/>
+                    <enumeration value="xsd:int"/>
+                    <enumeration value="xsd:string"/>
+                    <enumeration value="xsd:date"/>
+                    <enumeration value="xsd:dateTime"/>
+                    <enumeration value="xsd:time"/>
+                    <enumeration value="xsd:anyType"/> <!-- can be id, booolean, double, int, string, date, dateTime -->
+                </restriction>
+            </simpleType>
+
+            <complexType name="Field">
+                <sequence>
+                    <element name="autoNumber"         type="xsd:boolean"/>
+                    <element name="byteLength"         type="xsd:int"/>
+                    <element name="calculated"         type="xsd:boolean"/>
+                    <element name="calculatedFormula"  type="xsd:string" minOccurs="0"/>
+                    <element name="caseSensitive"      type="xsd:boolean"/>
+                    <element name="controllerName"     type="xsd:string" minOccurs="0"/>
+                    <element name="createable"         type="xsd:boolean"/>
+                    <element name="custom"             type="xsd:boolean"/>
+                    <element name="defaultValueFormula" type="xsd:string" minOccurs="0"/>
+                    <element name="defaultedOnCreate"  type="xsd:boolean"/>
+                    <element name="dependentPicklist"  type="xsd:boolean" minOccurs="0"/>
+                    <element name="digits"             type="xsd:int"/>
+                    <element name="externalId"         type="xsd:boolean" minOccurs="0"/>
+                    <element name="filterable"         type="xsd:boolean"/>
+                    <element name="htmlFormatted"      type="xsd:boolean" minOccurs="0"/>
+                    <element name="idLookup"           type="xsd:boolean"/>
+                    <element name="inlineHelpText"     type="xsd:string" minOccurs="0"/>
+                    <element name="label"              type="xsd:string"/>
+                    <element name="length"             type="xsd:int"/>
+                    <element name="name"               type="xsd:string"/>
+                    <element name="nameField"          type="xsd:boolean"/>
+                    <element name="namePointing"       type="xsd:boolean" minOccurs="0"/>
+                    <element name="nillable"           type="xsd:boolean"/>
+                    <element name="picklistValues"     type="tns:PicklistEntry" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="precision"          type="xsd:int"/>
+                    <element name="referenceTo"        type="xsd:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="relationshipName"   type="xsd:string" minOccurs="0"/>
+                    <element name="relationshipOrder"  type="xsd:int" minOccurs="0"/>
+                    <element name="restrictedPicklist" type="xsd:boolean"/>
+                    <element name="scale"              type="xsd:int"/>
+                    <element name="soapType"           type="tns:soapType"/>
+                    <element name="sortable"           type="xsd:boolean" minOccurs="0"/>
+                    <element name="type"               type="tns:fieldType"/>
+                    <element name="unique"             type="xsd:boolean"/>
+                    <element name="updateable"         type="xsd:boolean"/>
+                    <element name="writeRequiresMasterRead" type="xsd:boolean" minOccurs="0"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="PicklistEntry">
+                <sequence>
+                    <element name="active"       type="xsd:boolean"/>
+                    <element name="defaultValue" type="xsd:boolean"/>
+                    <element name="label"        type="xsd:string" nillable="true"/>
+                    <element name="validFor"     type="xsd:base64Binary" minOccurs="0"/>
+                    <element name="value"        type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeSoftphoneLayoutResult">
+                <sequence>
+                    <element name="callTypes" type="tns:DescribeSoftphoneLayoutCallType" maxOccurs="unbounded"/>
+                    <element name="id" type="tns:ID"/>
+                    <element name="name" type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeSoftphoneLayoutCallType">
+                <sequence>
+                    <element name="infoFields" type="tns:DescribeSoftphoneLayoutInfoField" maxOccurs="unbounded"/>
+                    <element name="name" type="xsd:string"/>
+                    <element name="sections" type="tns:DescribeSoftphoneLayoutSection" minOccurs="0" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeSoftphoneLayoutInfoField">
+                <sequence>
+                    <element name="name" type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeSoftphoneLayoutSection">
+                <sequence>
+                    <element name="entityApiName" type="xsd:string"/>
+                    <element name="items" type="tns:DescribeSoftphoneLayoutItem" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeSoftphoneLayoutItem">
+                <sequence>
+                    <element name="itemApiName" type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayoutResult">
+                <sequence>
+                    <element name="layouts"            type="tns:DescribeLayout" maxOccurs="unbounded"/>
+                    <element name="recordTypeMappings" type="tns:RecordTypeMapping" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="recordTypeSelectorRequired" type="xsd:boolean" />
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayout">
+                <sequence>
+                    <element name="buttonLayoutSection"  type="tns:DescribeLayoutButtonSection" minOccurs="0"/>
+                    <element name="detailLayoutSections" type="tns:DescribeLayoutSection" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="editLayoutSections"   type="tns:DescribeLayoutSection" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="id"                   type="tns:ID"/>
+
+
+                    <element name="relatedLists"                type="tns:RelatedList" minOccurs="0" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayoutSection">
+                <sequence>
+                    <element name="columns"                 type="xsd:int"/>
+                    <element name="heading"                 type="xsd:string"/>
+                    <element name="layoutRows"              type="tns:DescribeLayoutRow" maxOccurs="unbounded"/>
+                    <element name="rows"                    type="xsd:int"/>
+                    <element name="useCollapsibleSection"   type="xsd:boolean"/>
+                    <element name="useHeading"              type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayoutButtonSection">
+                <sequence>
+                    <element name="detailButtons"         type="tns:DescribeLayoutButton" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayoutRow">
+                <sequence>
+                    <element name="layoutItems"      type="tns:DescribeLayoutItem" maxOccurs="unbounded"/>
+                    <element name="numItems"         type="xsd:int"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayoutItem">
+                <sequence>
+                    <element name="editable"         type="xsd:boolean"/>
+                    <element name="label"            type="xsd:string" nillable="true"/>
+                    <element name="layoutComponents" type="tns:DescribeLayoutComponent" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="placeholder"      type="xsd:boolean"/>
+                    <element name="required"         type="xsd:boolean"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayoutButton">
+                <sequence>
+                    <element name="custom"           type="xsd:boolean"/>
+                    <element name="label"            type="xsd:string" nillable="true"/>
+                    <element name="name"             type="xsd:string" nillable="true"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeLayoutComponent">
+                <sequence>
+                    <element name="displayLines"      type="xsd:int"/>
+                    <element name="tabOrder"          type="xsd:int"/>
+                    <element name="type"              type="tns:layoutComponentType"/>
+                    <element name="value"             type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <simpleType name="layoutComponentType">
+                <restriction base="xsd:string">
+                    <enumeration value="Field"/>
+                    <enumeration value="Separator"/>
+                    <enumeration value="SControl"/>
+                    <enumeration value="EmptySpace"/>
+                </restriction>
+            </simpleType>
+
+            <complexType name="RecordTypeInfo">
+                <sequence>
+                    <element name="available"                 type="xsd:boolean"/>
+                    <element name="defaultRecordTypeMapping"  type="xsd:boolean"/>
+                    <element name="name"                      type="xsd:string"/>
+                    <element name="recordTypeId"              type="tns:ID" nillable="true"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="RecordTypeMapping">
+                <sequence>
+                    <element name="available"                 type="xsd:boolean"/>
+                    <element name="defaultRecordTypeMapping"  type="xsd:boolean"/>
+                    <element name="layoutId"                  type="tns:ID"/>
+                    <element name="name"                      type="xsd:string"/>
+                    <element name="picklistsForRecordType"    type="tns:PicklistForRecordType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    <element name="recordTypeId"              type="tns:ID" nillable="true"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="PicklistForRecordType">
+                <sequence>
+                    <element name="picklistName"      type="xsd:string"/>
+                    <element name="picklistValues"    type="tns:PicklistEntry" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="RelatedList">
+                <sequence>
+                    <element name="columns"         type="tns:RelatedListColumn" maxOccurs="unbounded"/>
+                    <element name="custom"          type="xsd:boolean"/>
+                    <element name="field"           type="xsd:string" nillable="true"/>
+                    <element name="label"           type="xsd:string"/>
+                    <element name="limitRows"       type="xsd:int"/>
+                    <element name="name"            type="xsd:string"/>
+                    <element name="sobject"         type="xsd:string" nillable="true"/>
+                    <element name="sort"            type="tns:RelatedListSort" minOccurs="0" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="RelatedListColumn">
+                <sequence>
+                    <element name="field"           type="xsd:string" nillable="true"/>
+                    <element name="format"          type="xsd:string" nillable="true"/>
+                    <element name="label"           type="xsd:string"/>
+                    <element name="name"            type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="RelatedListSort">
+                <sequence>
+                    <element name="ascending"       type="xsd:boolean"/>
+                    <element name="column"          type="xsd:string"/>
+                </sequence>
+            </complexType>
+
+
+
+            <complexType name="EmailFileAttachment">
+                <sequence>
+                    <element name="body"                nillable="true" minOccurs="0" type="xsd:base64Binary"/>
+                    <element name="fileName"            type="xsd:string" />
+                </sequence>
+            </complexType>
+            <simpleType name="EmailPriority">
+                <restriction base="xsd:string">
+                    <enumeration value="Highest"/>
+                    <enumeration value="High"/>
+                    <enumeration value="Normal"/>
+                    <enumeration value="Low"/>
+                    <enumeration value="Lowest"/>
+                </restriction>
+            </simpleType>
+
+            <complexType name="Email">
+                <sequence>
+                    <element name="bccSender"         type="xsd:boolean" nillable="true"/>
+                    <element name="emailPriority"      type="tns:EmailPriority" nillable="true"/>
+                    <element name="replyTo"            type="xsd:string" nillable="true"/>
+                    <element name="saveAsActivity"     type="xsd:boolean" nillable="true"/>
+                    <element name="senderDisplayName"  type="xsd:string" nillable="true"/>
+                    <element name="subject"            type="xsd:string" nillable="true"/>
+                    <element name="useSignature"       type="xsd:boolean" nillable="true"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="MassEmailMessage">
+                <complexContent>
+                    <extension base="tns:Email">
+                        <sequence>
+                            <element name="description"  type="xsd:string" nillable="true"/>
+                            <element name="targetObjectIds"     minOccurs="0" maxOccurs="250" type="tns:ID" />
+                            <element name="templateId"          type="tns:ID"/>
+                            <element name="whatIds"             minOccurs="0" maxOccurs="250" type="tns:ID" />
+                        </sequence>
+                    </extension>
+                </complexContent>
+            </complexType>
+
+            <complexType name="SingleEmailMessage">
+                <complexContent>
+                    <extension base="tns:Email">
+                        <sequence>
+                            <element name="bccAddresses"        minOccurs="0" maxOccurs="5" type="xsd:string" nillable="true"/>
+                            <element name="ccAddresses"         minOccurs="0" maxOccurs="5" type="xsd:string" nillable="true"/>
+                            <element name="charset"             type="xsd:string" nillable="true"/>
+                            <element name="documentAttachments" minOccurs="0" maxOccurs="unbounded" type="tns:ID" />
+                            <element name="htmlBody"       type="xsd:string" nillable="true"/>
+                            <element name="fileAttachments"     minOccurs="0" maxOccurs="unbounded" type="tns:EmailFileAttachment"/>
+                            <element name="plainTextBody"       type="xsd:string" nillable="true"/>
+                            <element name="targetObjectId"      type="tns:ID" nillable="true"/>
+                            <element name="templateId"          type="tns:ID" nillable="true"/>
+                            <element name="toAddresses"         minOccurs="0" maxOccurs="10" type="xsd:string" nillable="true"/>
+                            <element name="whatId"              type="tns:ID" nillable="true"/>
+                        </sequence>
+                    </extension>
+                </complexContent>
+            </complexType>
+
+            <complexType name="SendEmailResult">
+                <sequence>
+                    <element name="errors"              minOccurs="0" maxOccurs="unbounded" type="tns:SendEmailError" />
+                    <element name="success"             type="xsd:boolean" />
+                </sequence>
+            </complexType>
+
+
+
+            <complexType name="DescribeTabSetResult">
+                <sequence>
+                    <element name="label"           type="xsd:string" />
+                    <element name="logoUrl"         type="xsd:string" />
+                    <element name="namespace"       type="xsd:string" minOccurs="0"/>
+                    <element name="selected"        type="xsd:boolean" />
+                    <element name="tabs"            type="tns:DescribeTab" minOccurs="0" maxOccurs="unbounded"/>
+                </sequence>
+            </complexType>
+
+            <complexType name="DescribeTab">
+                <sequence>
+                    <element name="custom"           type="xsd:boolean" />
+                    <element name="iconUrl"          type="xsd:string" />
+                    <element name="label"            type="xsd:string" />
+                    <element name="miniIconUrl"      type="xsd:string" />
+                    <element name="sobjectName"      type="xsd:string" nillable="true" />
+                    <element name="url"              type="xsd:string" />
+                </sequence>
+            </complexType>
+
+
+
+
+
+            <!-- Login Message Types -->
+            <element name="login">
+                <complexType>
+                    <sequence>
+                        <element name="username" type="xsd:string"/>
+                        <element name="password" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="loginResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:LoginResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Describe Message Types -->
+            <element name="describeSObject">
+                <complexType>
+                    <sequence>
+                        <element name="sObjectType" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="describeSObjectResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:DescribeSObjectResult" nillable="true"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- DescibeSObjects Message Types -->
+            <element name="describeSObjects">
+                <complexType>
+                    <sequence>
+                        <element name="sObjectType" type="xsd:string" minOccurs='0' maxOccurs='100' />
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="describeSObjectsResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:DescribeSObjectResult" nillable="true" minOccurs='0' maxOccurs='100'/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Describe Global Message Types -->
+            <element name="describeGlobal">
+                <complexType>
+                    <sequence/>
+                </complexType>
+            </element>
+            <element name="describeGlobalResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:DescribeGlobalResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="describeLayout">
+                <complexType>
+                    <sequence>
+                        <element name="sObjectType" type="xsd:string"/>
+                        <element name="recordTypeIds" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="describeLayoutResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:DescribeLayoutResult" nillable="true"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="describeSoftphoneLayout">
+                <complexType>
+                    <sequence/>
+                </complexType>
+            </element>
+            <element name="describeSoftphoneLayoutResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:DescribeSoftphoneLayoutResult" nillable="true"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+            <element name="describeTabs">
+                <complexType>
+                    <sequence/>
+                </complexType>
+            </element>
+            <element name="describeTabsResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:DescribeTabSetResult" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Create Message Types -->
+            <element name="create">
+                <complexType>
+                    <sequence>
+                        <element name="sObjects" type="ens:sObject" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="createResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:SaveResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+
+            <!-- Send Email Types -->
+            <element name="sendEmail">
+                <complexType>
+                    <sequence>
+                        <element name="messages" type="tns:Email" minOccurs="0" maxOccurs="10"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="sendEmailResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" minOccurs="0" maxOccurs="10" type="tns:SendEmailResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+            <!-- Update Message Types -->
+            <element name="update">
+                <complexType>
+                    <sequence>
+                        <element name="sObjects" type="ens:sObject" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="updateResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:SaveResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Upsert Message Types -->
+            <element name="upsert">
+                <complexType>
+                    <sequence>
+                        <element name="externalIDFieldName" type="xsd:string"/>
+                        <element name="sObjects" type="ens:sObject" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="upsertResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:UpsertResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Merge Message Types -->
+            <element name="merge">
+                <complexType>
+                    <sequence>
+                        <element name="request" type="tns:MergeRequest" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="mergeResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:MergeResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Delete Message Types -->
+            <element name="delete">
+                <complexType>
+                    <sequence>
+                        <element name="ids" type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="deleteResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:DeleteResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Undelete Message Types -->
+            <element name="undelete">
+                <complexType>
+                    <sequence>
+                        <element name="ids" type="tns:ID" minOccurs="1" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="undeleteResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:UndeleteResult" minOccurs="1" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- EmptyRecycleBin Message Types -->
+            <element name="emptyRecycleBin">
+                <complexType>
+                    <sequence>
+                        <element name="ids" type="tns:ID" minOccurs="1" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="emptyRecycleBinResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:EmptyRecycleBinResult" minOccurs="1" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Process Message Types -->
+            <element name="process">
+                <complexType>
+                    <sequence>
+                        <element name="actions" type="tns:ProcessRequest" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="processResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:ProcessResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Retrieve (ID List) Message Types -->
+            <element name="retrieve">
+                <complexType>
+                    <sequence>
+                        <element name="fieldList"   type="xsd:string"/>
+                        <element name="sObjectType" type="xsd:string"/>
+                        <element name="ids"         type="tns:ID" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="retrieveResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="ens:sObject" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Convert Lead Message Types -->
+            <element name="convertLead">
+                <complexType>
+                    <sequence>
+                        <element name="leadConverts" type="tns:LeadConvert" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="convertLeadResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:LeadConvertResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Get Updated Message Types -->
+            <element name="getUpdated">
+                <complexType>
+                    <sequence>
+                        <element name="sObjectType" type="xsd:string"/>
+                        <element name="startDate" type="xsd:dateTime"/>
+                        <element name="endDate" type="xsd:dateTime"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="getUpdatedResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:GetUpdatedResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Get Deleted Message Types -->
+            <element name="getDeleted">
+                <complexType>
+                    <sequence>
+                        <element name="sObjectType" type="xsd:string"/>
+                        <element name="startDate" type="xsd:dateTime"/>
+                        <element name="endDate" type="xsd:dateTime"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="getDeletedResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:GetDeletedResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+            <!-- Logout current session -->
+            <element name="logout">
+                <complexType>
+                </complexType>
+            </element>
+
+            <element name="logoutResponse">
+                <complexType>
+                </complexType>
+            </element>
+
+            <!-- Invalidate a list of session ids -->
+            <element name="invalidateSessions">
+                <complexType>
+                    <sequence>
+                        <element name="sessionIds" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="invalidateSessionsResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:InvalidateSessionsResult" minOccurs="0" maxOccurs="unbounded"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Create Query -->
+            <element name="query">
+                <complexType>
+                    <sequence>
+                        <element name="queryString" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="queryResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:QueryResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Create Query All -->
+            <element name="queryAll">
+                <complexType>
+                    <sequence>
+                        <element name="queryString" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="queryAllResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:QueryResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <!-- Next Batch of sObjects from a query -->
+            <element name="queryMore">
+                <complexType>
+                    <sequence>
+                        <element name="queryLocator" type="tns:QueryLocator"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="queryMoreResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:QueryResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+
+            <!-- Create Search -->
+            <element name="search">
+                <complexType>
+                    <sequence>
+                        <element name="searchString" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="searchResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:SearchResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+
+            <element name="getServerTimestamp">
+                <complexType>
+                    <sequence/>
+                </complexType>
+            </element>
+            <element name="getServerTimestampResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:GetServerTimestampResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="setPassword">
+                <complexType>
+                    <sequence>
+                        <element name="userId" type="tns:ID"/>
+                        <element name="password" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="setPasswordResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:SetPasswordResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="resetPassword">
+                <complexType>
+                    <sequence>
+                        <element name="userId" type="tns:ID"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="resetPasswordResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:ResetPasswordResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="getUserInfo">
+                <complexType>
+                    <sequence/>
+                </complexType>
+            </element>
+            <element name="getUserInfoResponse">
+                <complexType>
+                    <sequence>
+                        <element name="result" type="tns:GetUserInfoResult"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+
+            <!-- Header Elements -->
+            <element name="SessionHeader">
+                <complexType>
+                    <sequence>
+                        <element name="sessionId" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="LoginScopeHeader">
+                <complexType>
+                    <sequence>
+                        <element name="organizationId" type="tns:ID"/>
+                        <element name="portalId" type="tns:ID" minOccurs="0"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+            <element name="CallOptions">
+                <complexType>
+                    <sequence>
+                        <element name="client"            type="xsd:string" nillable="true"/>
+                        <element name="defaultNamespace"  type="xsd:string" nillable="true"/>
+
+                    </sequence>
+                </complexType>
+            </element>
+
+
+            <element name="QueryOptions">
+                <complexType>
+                    <sequence>
+                        <element name="batchSize"       type="xsd:int" minOccurs="0"/>
+
+                    </sequence>
+                </complexType>
+            </element>
+
+
+            <simpleType name="DebugLevel">
+                <restriction base="xsd:string">
+                    <enumeration value="None"/>
+                    <enumeration value="DebugOnly"/>
+                    <enumeration value="Db"/>
+                </restriction>
+            </simpleType>
+            <element name="DebuggingHeader">
+                <complexType>
+                    <sequence>
+                        <element name="debugLevel" type="tns:DebugLevel"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="DebuggingInfo">
+                <complexType>
+                    <sequence>
+                        <element name="debugLog" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="AllowFieldTruncationHeader">
+                <complexType>
+                    <sequence>
+                        <element name="allowFieldTruncation" type="xsd:boolean" />
+                    </sequence>
+                </complexType>
+            </element>
+        
+            <!-- ideally this could of just been elem name="..." type="xsd:boolean"
+                 but is required to be nested within a complexType for .NET 1.1 compatibility -->
+            <element name="MruHeader">
+                <complexType>
+                    <sequence>
+                        <element name="updateMru" type="xsd:boolean" />
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="EmailHeader">
+                <complexType>
+                    <sequence>
+                        <element name="triggerAutoResponseEmail"    type="xsd:boolean"/>
+                        <element name="triggerOtherEmail"           type="xsd:boolean"/>
+                        <element name="triggerUserEmail"            type="xsd:boolean"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="AssignmentRuleHeader">
+                <complexType>
+                    <sequence>
+                        <element name="assignmentRuleId"    type="tns:ID"  nillable="true" />
+                        <element name="useDefaultRule"      type="xsd:boolean" nillable="true" />
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="UserTerritoryDeleteHeader">
+                <complexType>
+                    <sequence>
+                        <element name="transferToUserId" type="tns:ID" nillable="true"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+
+
+            <element name="LocaleOptions">
+                <complexType>
+                    <sequence>
+                        <element name="language"  type="xsd:string" minOccurs="0"/>
+                    </sequence>
+                </complexType>
+            </element>
+        </schema>
+
+        <schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:fault.partner.soap.sforce.com" xmlns:fns="urn:fault.partner.soap.sforce.com">
+
+            <simpleType name="ExceptionCode">
+                <restriction base="xsd:string">
+                    <enumeration value="API_CURRENTLY_DISABLED"/>
+                    <enumeration value="API_DISABLED_FOR_ORG"/>
+                    <enumeration value="CANT_ADD_STANDADRD_PORTAL_USER_TO_TERRITORY"/>
+                    <enumeration value="CANT_ADD_STANDARD_PORTAL_USER_TO_TERRITORY"/>
+                    <enumeration value="CIRCULAR_OBJECT_GRAPH"/>
+                    <enumeration value="CLIENT_NOT_ACCESSIBLE_FOR_USER"/>
+                    <enumeration value="CLIENT_REQUIRE_UPDATE_FOR_USER"/>
+                    <enumeration value="CUSTOM_METADATA_LIMIT_EXCEEDED"/>
+                    <enumeration value="DUPLICATE_VALUE"/>
+                    <enumeration value="EMAIL_BATCH_SIZE_LIMIT_EXCEEDED"/>
+                    <enumeration value="EMAIL_TO_CASE_INVALID_ROUTING"/>
+                    <enumeration value="EMAIL_TO_CASE_LIMIT_EXCEEDED"/>
+                    <enumeration value="EMAIL_TO_CASE_NOT_ENABLED"/>
+                    <enumeration value="EXCEEDED_ID_LIMIT"/>
+                    <enumeration value="EXCEEDED_LEAD_CONVERT_LIMIT"/>
+                    <enumeration value="EXCEEDED_MAX_SIZE_REQUEST"/>
+                    <enumeration value="EXCEEDED_MAX_TYPES_LIMIT"/>
+                    <enumeration value="EXCEEDED_QUOTA"/>
+                    <enumeration value="FUNCTIONALITY_NOT_ENABLED"/>
+                    <enumeration value="INACTIVE_OWNER_OR_USER"/>
+                    <enumeration value="INACTIVE_PORTAL"/>
+                    <enumeration value="INSUFFICIENT_ACCESS"/>
+                    <enumeration value="INVALID_ASSIGNMENT_RULE"/>
+                    <enumeration value="INVALID_BATCH_SIZE"/>
+                    <enumeration value="INVALID_CLIENT"/>
+                    <enumeration value="INVALID_CROSS_REFERENCE_KEY"/>
+                    <enumeration value="INVALID_FIELD"/>
+                    <enumeration value="INVALID_FILTER_LANGUAGE"/>
+                    <enumeration value="INVALID_FILTER_VALUE"/>
+                    <enumeration value="INVALID_ID_FIELD"/>
+                    <enumeration value="INVALID_LOCALE_LANGUAGE"/>
+                    <enumeration value="INVALID_LOCATOR"/>
+                    <enumeration value="INVALID_LOGIN"/>
+                    <enumeration value="INVALID_NEW_PASSWORD"/>
+                    <enumeration value="INVALID_OPERATION"/>
+                    <enumeration value="INVALID_OPERATION_WITH_EXPIRED_PASSWORD"/>
+                    <enumeration value="INVALID_QUERY_FILTER_OPERATOR"/>
+                    <enumeration value="INVALID_QUERY_LOCATOR"/>
+                    <enumeration value="INVALID_QUERY_SCOPE"/>
+                    <enumeration value="INVALID_REPLICATION_DATE"/>
+                    <enumeration value="INVALID_SEARCH"/>
+                    <enumeration value="INVALID_SEARCH_SCOPE"/>
+                    <enumeration value="INVALID_SESSION_ID"/>
+                    <enumeration value="INVALID_SOAP_HEADER"/>
+                    <enumeration value="INVALID_SSO_GATEWAY_URL"/>
+                    <enumeration value="INVALID_TYPE"/>
+                    <enumeration value="INVALID_TYPE_FOR_OPERATION"/>
+                    <enumeration value="LIMIT_EXCEEDED"/>
+                    <enumeration value="LOGIN_CHALLENGE_ISSUED"/>
+                    <enumeration value="LOGIN_CHALLENGE_PENDING"/>
+                    <enumeration value="LOGIN_DURING_RESTRICTED_DOMAIN"/>
+                    <enumeration value="LOGIN_DURING_RESTRICTED_TIME"/>
+                    <enumeration value="LOGIN_MUST_USE_SECURITY_TOKEN"/>
+                    <enumeration value="MALFORMED_ID"/>
+                    <enumeration value="MALFORMED_QUERY"/>
+                    <enumeration value="MALFORMED_SEARCH"/>
+                    <enumeration value="MISSING_ARGUMENT"/>
+                    <enumeration value="NOT_MODIFIED"/>
+                    <enumeration value="NO_SOFTPHONE_LAYOUT"/>
+                    <enumeration value="NUMBER_OUTSIDE_VALID_RANGE"/>
+                    <enumeration value="OPERATION_TOO_LARGE"/>
+                    <enumeration value="ORG_LOCKED"/>
+                    <enumeration value="ORG_NOT_OWNED_BY_INSTANCE"/>
+                    <enumeration value="PASSWORD_LOCKOUT"/>
+                    <enumeration value="PORTAL_NO_ACCESS"/>
+                    <enumeration value="QUERY_TIMEOUT"/>
+                    <enumeration value="QUERY_TOO_COMPLICATED"/>
+                    <enumeration value="REQUEST_LIMIT_EXCEEDED"/>
+                    <enumeration value="REQUEST_RUNNING_TOO_LONG"/>
+                    <enumeration value="SERVER_UNAVAILABLE"/>
+                    <enumeration value="SSO_SERVICE_DOWN"/>
+                    <enumeration value="TOO_MANY_APEX_REQUESTS"/>
+                    <enumeration value="TRIAL_EXPIRED"/>
+                    <enumeration value="UNKNOWN_EXCEPTION"/>
+                    <enumeration value="UNSUPPORTED_API_VERSION"/>
+                    <enumeration value="UNSUPPORTED_CLIENT"/>
+                </restriction>
+            </simpleType>
+            <!-- For convenience these QNames are returned in the standard soap faultcode element -->
+            <simpleType name="FaultCode">
+                <restriction base="xsd:QName">
+                    <enumeration value="fns:API_CURRENTLY_DISABLED"/>
+                    <enumeration value="fns:API_DISABLED_FOR_ORG"/>
+                    <enumeration value="fns:CANT_ADD_STANDADRD_PORTAL_USER_TO_TERRITORY"/>
+                    <enumeration value="fns:CANT_ADD_STANDARD_PORTAL_USER_TO_TERRITORY"/>
+                    <enumeration value="fns:CIRCULAR_OBJECT_GRAPH"/>
+                    <enumeration value="fns:CLIENT_NOT_ACCESSIBLE_FOR_USER"/>
+                    <enumeration value="fns:CLIENT_REQUIRE_UPDATE_FOR_USER"/>
+                    <enumeration value="fns:CUSTOM_METADATA_LIMIT_EXCEEDED"/>
+                    <enumeration value="fns:DUPLICATE_VALUE"/>
+                    <enumeration value="fns:EMAIL_BATCH_SIZE_LIMIT_EXCEEDED"/>
+                    <enumeration value="fns:EMAIL_TO_CASE_INVALID_ROUTING"/>
+                    <enumeration value="fns:EMAIL_TO_CASE_LIMIT_EXCEEDED"/>
+                    <enumeration value="fns:EMAIL_TO_CASE_NOT_ENABLED"/>
+                    <enumeration value="fns:EXCEEDED_ID_LIMIT"/>
+                    <enumeration value="fns:EXCEEDED_LEAD_CONVERT_LIMIT"/>
+                    <enumeration value="fns:EXCEEDED_MAX_SIZE_REQUEST"/>
+                    <enumeration value="fns:EXCEEDED_MAX_TYPES_LIMIT"/>
+                    <enumeration value="fns:EXCEEDED_QUOTA"/>
+                    <enumeration value="fns:FUNCTIONALITY_NOT_ENABLED"/>
+                    <enumeration value="fns:INACTIVE_OWNER_OR_USER"/>
+                    <enumeration value="fns:INACTIVE_PORTAL"/>
+                    <enumeration value="fns:INSUFFICIENT_ACCESS"/>
+                    <enumeration value="fns:INVALID_ASSIGNMENT_RULE"/>
+                    <enumeration value="fns:INVALID_BATCH_SIZE"/>
+                    <enumeration value="fns:INVALID_CLIENT"/>
+                    <enumeration value="fns:INVALID_CROSS_REFERENCE_KEY"/>
+                    <enumeration value="fns:INVALID_FIELD"/>
+                    <enumeration value="fns:INVALID_FILTER_LANGUAGE"/>
+                    <enumeration value="fns:INVALID_FILTER_VALUE"/>
+                    <enumeration value="fns:INVALID_ID_FIELD"/>
+                    <enumeration value="fns:INVALID_LOCALE_LANGUAGE"/>
+                    <enumeration value="fns:INVALID_LOCATOR"/>
+                    <enumeration value="fns:INVALID_LOGIN"/>
+                    <enumeration value="fns:INVALID_NEW_PASSWORD"/>
+                    <enumeration value="fns:INVALID_OPERATION"/>
+                    <enumeration value="fns:INVALID_OPERATION_WITH_EXPIRED_PASSWORD"/>
+                    <enumeration value="fns:INVALID_QUERY_FILTER_OPERATOR"/>
+                    <enumeration value="fns:INVALID_QUERY_LOCATOR"/>
+                    <enumeration value="fns:INVALID_QUERY_SCOPE"/>
+                    <enumeration value="fns:INVALID_REPLICATION_DATE"/>
+                    <enumeration value="fns:INVALID_SEARCH"/>
+                    <enumeration value="fns:INVALID_SEARCH_SCOPE"/>
+                    <enumeration value="fns:INVALID_SESSION_ID"/>
+                    <enumeration value="fns:INVALID_SOAP_HEADER"/>
+                    <enumeration value="fns:INVALID_SSO_GATEWAY_URL"/>
+                    <enumeration value="fns:INVALID_TYPE"/>
+                    <enumeration value="fns:INVALID_TYPE_FOR_OPERATION"/>
+                    <enumeration value="fns:LIMIT_EXCEEDED"/>
+                    <enumeration value="fns:LOGIN_CHALLENGE_ISSUED"/>
+                    <enumeration value="fns:LOGIN_CHALLENGE_PENDING"/>
+                    <enumeration value="fns:LOGIN_DURING_RESTRICTED_DOMAIN"/>
+                    <enumeration value="fns:LOGIN_DURING_RESTRICTED_TIME"/>
+                    <enumeration value="fns:LOGIN_MUST_USE_SECURITY_TOKEN"/>
+                    <enumeration value="fns:MALFORMED_ID"/>
+                    <enumeration value="fns:MALFORMED_QUERY"/>
+                    <enumeration value="fns:MALFORMED_SEARCH"/>
+                    <enumeration value="fns:MISSING_ARGUMENT"/>
+                    <enumeration value="fns:NOT_MODIFIED"/>
+                    <enumeration value="fns:NO_SOFTPHONE_LAYOUT"/>
+                    <enumeration value="fns:NUMBER_OUTSIDE_VALID_RANGE"/>
+                    <enumeration value="fns:OPERATION_TOO_LARGE"/>
+                    <enumeration value="fns:ORG_LOCKED"/>
+                    <enumeration value="fns:ORG_NOT_OWNED_BY_INSTANCE"/>
+                    <enumeration value="fns:PASSWORD_LOCKOUT"/>
+                    <enumeration value="fns:PORTAL_NO_ACCESS"/>
+                    <enumeration value="fns:QUERY_TIMEOUT"/>
+                    <enumeration value="fns:QUERY_TOO_COMPLICATED"/>
+                    <enumeration value="fns:REQUEST_LIMIT_EXCEEDED"/>
+                    <enumeration value="fns:REQUEST_RUNNING_TOO_LONG"/>
+                    <enumeration value="fns:SERVER_UNAVAILABLE"/>
+                    <enumeration value="fns:SSO_SERVICE_DOWN"/>
+                    <enumeration value="fns:TOO_MANY_APEX_REQUESTS"/>
+                    <enumeration value="fns:TRIAL_EXPIRED"/>
+                    <enumeration value="fns:UNKNOWN_EXCEPTION"/>
+                    <enumeration value="fns:UNSUPPORTED_API_VERSION"/>
+                    <enumeration value="fns:UNSUPPORTED_CLIENT"/>
+                </restriction>
+            </simpleType>
+
+
+            <!-- Fault -->
+            <complexType name="ApiFault">
+                <sequence>
+                    <element name="exceptionCode"    type="fns:ExceptionCode"/>
+                    <element name="exceptionMessage" type="xsd:string"/>
+
+                </sequence>
+            </complexType>
+
+            <element name="fault" type="fns:ApiFault" />
+
+            <complexType name="ApiQueryFault">
+                <complexContent>
+                    <extension base="fns:ApiFault">
+                        <sequence>
+                        <element name="row" type="xsd:int"/>
+                        <element name="column" type="xsd:int"/>
+                        </sequence>
+                    </extension>
+                </complexContent>
+            </complexType>
+
+            <complexType name="LoginFault">
+                <complexContent>
+                    <extension base="fns:ApiFault"/>
+                </complexContent>
+            </complexType>
+            <element name="LoginFault" type="fns:LoginFault"/>
+
+            <complexType name="InvalidQueryLocatorFault">
+                <complexContent>
+                    <extension base="fns:ApiFault"/>
+                </complexContent>
+            </complexType>
+            <element name="InvalidQueryLocatorFault" type="fns:InvalidQueryLocatorFault"/>
+
+            <complexType name="InvalidNewPasswordFault">
+                <complexContent>
+                    <extension base="fns:ApiFault"/>
+                </complexContent>
+            </complexType>
+            <element name="InvalidNewPasswordFault" type="fns:InvalidNewPasswordFault"/>
+
+            <complexType name="InvalidIdFault">
+                <complexContent>
+                    <extension base="fns:ApiFault"/>
+                </complexContent>
+            </complexType>
+            <element name="InvalidIdFault" type="fns:InvalidIdFault"/>
+
+            <complexType name="UnexpectedErrorFault">
+                <complexContent>
+                    <extension base="fns:ApiFault"/>
+                </complexContent>
+            </complexType>
+            <element name="UnexpectedErrorFault" type="fns:UnexpectedErrorFault"/>
+
+            <complexType name="InvalidFieldFault">
+                <complexContent>
+                    <extension base="fns:ApiQueryFault"/>
+                </complexContent>
+            </complexType>
+            <element name="InvalidFieldFault" type="fns:InvalidFieldFault"/>
+
+            <complexType name="InvalidSObjectFault">
+                <complexContent>
+                    <extension base="fns:ApiQueryFault"/>
+                </complexContent>
+            </complexType>
+            <element name="InvalidSObjectFault" type="fns:InvalidSObjectFault"/>
+
+            <complexType name="MalformedQueryFault">
+                <complexContent>
+                    <extension base="fns:ApiQueryFault"/>
+                </complexContent>
+            </complexType>
+            <element name="MalformedQueryFault" type="fns:MalformedQueryFault"/>
+
+            <complexType name="MalformedSearchFault">
+                <complexContent>
+                    <extension base="fns:ApiQueryFault"/>
+                </complexContent>
+            </complexType>
+            <element name="MalformedSearchFault" type="fns:MalformedSearchFault"/>
+
+
+        </schema>
+    </types>
+
+    <!-- Header Message -->
+    <message name="Header">
+        <part element="tns:LoginScopeHeader"             name="LoginScopeHeader"/>
+        <part element="tns:SessionHeader"                name="SessionHeader"/>
+
+        <part element="tns:CallOptions"                  name="CallOptions"/>
+
+        <part element="tns:QueryOptions"                 name="QueryOptions"/>
+        <part element="tns:AssignmentRuleHeader"         name="AssignmentRuleHeader"/>
+        <part element="tns:AllowFieldTruncationHeader"   name="AllowFieldTruncationHeader"/>
+        <part element="tns:MruHeader"                    name="MruHeader"/>
+        <part element="tns:EmailHeader"                  name="EmailHeader"/>
+
+        <part element="tns:UserTerritoryDeleteHeader"    name="UserTerritoryDeleteHeader"/>
+
+        <part element="tns:DebuggingHeader"              name="DebuggingHeader"/>
+        <part element="tns:DebuggingInfo"                name="DebuggingInfo"/>
+        <part element="tns:LocaleOptions"                name="LocaleOptions"/>
+    </message>
+
+    <!-- Fault Messages -->
+
+    <message name="ApiFault">
+        <part name="fault" element="fns:fault"/>
+    </message>
+
+    <message name="LoginFault">
+        <part name="fault" element="fns:LoginFault"/>
+    </message>
+    <message name="InvalidQueryLocatorFault">
+        <part name="fault" element="fns:InvalidQueryLocatorFault"/>
+    </message>
+    <message name="InvalidNewPasswordFault">
+        <part name="fault" element="fns:InvalidNewPasswordFault"/>
+    </message>
+    <message name="InvalidIdFault">
+        <part name="fault" element="fns:InvalidIdFault"/>
+    </message>
+    <message name="UnexpectedErrorFault">
+        <part name="fault" element="fns:UnexpectedErrorFault"/>
+    </message>
+    <message name="InvalidFieldFault">
+        <part name="fault" element="fns:InvalidFieldFault"/>
+    </message>
+    <message name="InvalidSObjectFault">
+        <part name="fault" element="fns:InvalidSObjectFault"/>
+    </message>
+    <message name="MalformedQueryFault">
+        <part name="fault" element="fns:MalformedQueryFault"/>
+    </message>
+    <message name="MalformedSearchFault">
+        <part name="fault" element="fns:MalformedSearchFault"/>
+    </message>
+
+
+    <!-- Method Messages -->
+    <message name="loginRequest">
+        <part element="tns:login" name="parameters"/>
+    </message>
+    <message name="loginResponse">
+        <part element="tns:loginResponse" name="parameters"/>
+    </message>
+
+    <message name="describeSObjectRequest">
+        <part element="tns:describeSObject" name="parameters"/>
+    </message>
+    <message name="describeSObjectResponse">
+        <part element="tns:describeSObjectResponse" name="parameters"/>
+    </message>
+
+    <message name="describeSObjectsRequest">
+        <part element="tns:describeSObjects" name="parameters"/>
+    </message>
+    <message name="describeSObjectsResponse">
+        <part element="tns:describeSObjectsResponse" name="parameters"/>
+    </message>
+
+    <message name="describeGlobalRequest">
+        <part element="tns:describeGlobal" name="parameters"/>
+    </message>
+    <message name="describeGlobalResponse">
+        <part element="tns:describeGlobalResponse" name="parameters"/>
+    </message>
+
+    <message name="describeLayoutRequest">
+        <part element="tns:describeLayout" name="parameters"/>
+    </message>
+    <message name="describeLayoutResponse">
+        <part element="tns:describeLayoutResponse" name="parameters"/>
+    </message>
+
+    <message name="describeSoftphoneLayoutRequest">
+        <part element="tns:describeSoftphoneLayout" name="parameters"/>
+    </message>
+    <message name="describeSoftphoneLayoutResponse">
+        <part element="tns:describeSoftphoneLayoutResponse" name="parameters"/>
+    </message>
+
+    <message name="describeTabsRequest">
+        <part element="tns:describeTabs" name="parameters"/>
+    </message>
+    <message name="describeTabsResponse">
+        <part element="tns:describeTabsResponse" name="parameters"/>
+    </message>
+
+    <message name="createRequest">
+        <part element="tns:create" name="parameters"/>
+    </message>
+    <message name="createResponse">
+        <part element="tns:createResponse" name="parameters"/>
+    </message>
+
+    <message name="updateRequest">
+        <part element="tns:update" name="parameters"/>
+    </message>
+    <message name="updateResponse">
+        <part element="tns:updateResponse" name="parameters"/>
+    </message>
+
+    <message name="upsertRequest">
+        <part element="tns:upsert" name="parameters"/>
+    </message>
+    <message name="upsertResponse">
+        <part element="tns:upsertResponse" name="parameters"/>
+    </message>
+
+    <message name="mergeRequest">
+        <part element="tns:merge" name="parameters"/>
+    </message>
+    <message name="mergeResponse">
+        <part element="tns:mergeResponse" name="parameters"/>
+    </message>
+
+    <message name="deleteRequest">
+        <part element="tns:delete" name="parameters"/>
+    </message>
+    <message name="deleteResponse">
+        <part element="tns:deleteResponse" name="parameters"/>
+    </message>
+
+    <message name="undeleteRequest">
+        <part element="tns:undelete" name="parameters"/>
+    </message>
+    <message name="undeleteResponse">
+        <part element="tns:undeleteResponse" name="parameters"/>
+    </message>
+
+    <message name="emptyRecycleBinRequest">
+        <part element="tns:emptyRecycleBin" name="parameters"/>
+    </message>
+    <message name="emptyRecycleBinResponse">
+        <part element="tns:emptyRecycleBinResponse" name="parameters"/>
+    </message>
+
+    <message name="retrieveRequest">
+        <part element="tns:retrieve" name="parameters"/>
+    </message>
+    <message name="retrieveResponse">
+        <part element="tns:retrieveResponse" name="parameters"/>
+    </message>
+
+    <message name="processRequest">
+        <part element="tns:process" name="parameters"/>
+    </message>
+    <message name="processResponse">
+        <part element="tns:processResponse" name="parameters"/>
+    </message>
+
+    <message name="convertLeadRequest">
+        <part element="tns:convertLead" name="parameters"/>
+    </message>
+    <message name="convertLeadResponse">
+        <part element="tns:convertLeadResponse" name="parameters"/>
+    </message>
+
+    <message name="logoutRequest">
+        <part element="tns:logout" name="parameters"/>
+    </message>
+    <message name="logoutResponse">
+        <part element="tns:logoutResponse" name="parameters"/>
+    </message>
+
+    <message name="invalidateSessionsRequest">
+        <part element="tns:invalidateSessions" name="parameters"/>
+    </message>
+    <message name="invalidateSessionsResponse">
+        <part element="tns:invalidateSessionsResponse" name="parameters"/>
+    </message>
+
+    <message name="getDeletedRequest">
+        <part element="tns:getDeleted" name="parameters"/>
+    </message>
+    <message name="getDeletedResponse">
+        <part element="tns:getDeletedResponse" name="parameters"/>
+    </message>
+
+    <message name="getUpdatedRequest">
+        <part element="tns:getUpdated" name="parameters"/>
+    </message>
+    <message name="getUpdatedResponse">
+        <part element="tns:getUpdatedResponse" name="parameters"/>
+    </message>
+
+    <message name="queryRequest">
+        <part element="tns:query" name="parameters"/>
+    </message>
+    <message name="queryResponse">
+        <part element="tns:queryResponse" name="parameters"/>
+    </message>
+
+    <message name="queryAllRequest">
+        <part element="tns:queryAll" name="parameters"/>
+    </message>
+    <message name="queryAllResponse">
+        <part element="tns:queryAllResponse" name="parameters"/>
+    </message>
+
+    <message name="queryMoreRequest">
+        <part element="tns:queryMore" name="parameters"/>
+    </message>
+    <message name="queryMoreResponse">
+        <part element="tns:queryMoreResponse" name="parameters"/>
+    </message>
+
+    <message name="searchRequest">
+        <part element="tns:search" name="parameters"/>
+    </message>
+    <message name="searchResponse">
+        <part element="tns:searchResponse" name="parameters"/>
+    </message>
+
+    <message name="getServerTimestampRequest">
+        <part element="tns:getServerTimestamp" name="parameters"/>
+    </message>
+    <message name="getServerTimestampResponse">
+        <part element="tns:getServerTimestampResponse" name="parameters"/>
+    </message>
+
+    <message name="setPasswordRequest">
+        <part element="tns:setPassword" name="parameters"/>
+    </message>
+    <message name="setPasswordResponse">
+        <part element="tns:setPasswordResponse" name="parameters"/>
+    </message>
+
+    <message name="resetPasswordRequest">
+        <part element="tns:resetPassword" name="parameters"/>
+    </message>
+    <message name="resetPasswordResponse">
+        <part element="tns:resetPasswordResponse" name="parameters"/>
+    </message>
+
+    <message name="getUserInfoRequest">
+        <part element="tns:getUserInfo" name="parameters"/>
+    </message>
+    <message name="getUserInfoResponse">
+        <part element="tns:getUserInfoResponse" name="parameters"/>
+    </message>
+
+    <message name="sendEmailRequest">
+        <part element="tns:sendEmail" name="parameters"/>
+    </message>
+    <message name="sendEmailResponse">
+        <part element="tns:sendEmailResponse" name="parameters"/>
+    </message>
+
+
+
+    <!-- Soap PortType -->
+    <portType name="Soap">
+        <operation name="login">
+            <documentation>Login to the Salesforce.com SOAP Api</documentation>
+            <input  message="tns:loginRequest"/>
+            <output message="tns:loginResponse"/>
+            <fault  message="tns:LoginFault" name="LoginFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+        </operation>
+
+        <operation name="describeSObject">
+            <documentation>Describe an sObject</documentation>
+            <input  message="tns:describeSObjectRequest"/>
+            <output message="tns:describeSObjectResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="describeSObjects">
+            <documentation>Describe a number sObjects</documentation>
+            <input  message="tns:describeSObjectsRequest"/>
+            <output message="tns:describeSObjectsResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="describeGlobal">
+            <documentation>Describe the Global state</documentation>
+            <input  message="tns:describeGlobalRequest"/>
+            <output message="tns:describeGlobalResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="describeLayout">
+            <documentation>Describe the layout of an sObject</documentation>
+            <input  message="tns:describeLayoutRequest"/>
+            <output message="tns:describeLayoutResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+        </operation>
+
+        <operation name="describeSoftphoneLayout">
+            <documentation>Describe the layout of the SoftPhone</documentation>
+            <input  message="tns:describeSoftphoneLayoutRequest"/>
+            <output message="tns:describeSoftphoneLayoutResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="describeTabs">
+            <documentation>Describe the tabs that appear on a users page</documentation>
+            <input  message="tns:describeTabsRequest"/>
+            <output message="tns:describeTabsResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="create">
+            <documentation>Create a set of new sObjects</documentation>
+            <input  message="tns:createRequest"/>
+            <output message="tns:createResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+        </operation>
+
+        <operation name="update">
+            <documentation>Update a set of sObjects</documentation>
+            <input  message="tns:updateRequest"/>
+            <output message="tns:updateResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+        </operation>
+
+        <operation name="upsert">
+            <documentation>Update or insert a set of sObjects based on object id</documentation>
+            <input  message="tns:upsertRequest"/>
+            <output message="tns:upsertResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+        </operation>
+
+        <operation name="merge">
+            <documentation>Merge and update a set of sObjects based on object id</documentation>
+            <input  message="tns:mergeRequest"/>
+            <output message="tns:mergeResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+        </operation>
+
+        <operation name="delete">
+            <documentation>Delete a set of sObjects</documentation>
+            <input  message="tns:deleteRequest"/>
+            <output message="tns:deleteResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="undelete">
+            <documentation>Undelete a set of sObjects</documentation>
+            <input  message="tns:undeleteRequest"/>
+            <output message="tns:undeleteResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="emptyRecycleBin">
+            <documentation>Empty a set of sObjects from the recycle bin</documentation>
+            <input  message="tns:emptyRecycleBinRequest"/>
+            <output message="tns:emptyRecycleBinResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="retrieve">
+            <documentation>Get a set of sObjects</documentation>
+            <input  message="tns:retrieveRequest"/>
+            <output message="tns:retrieveResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+            <fault  message="tns:MalformedQueryFault" name="MalformedQueryFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+        </operation>
+
+        <operation name="process">
+            <documentation>Submit an entity to a workflow process or process a workitem</documentation>
+            <input  message="tns:processRequest"/>
+            <output message="tns:processResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+        </operation>
+
+        <operation name="convertLead">
+            <documentation>convert a set of leads</documentation>
+            <input  message="tns:convertLeadRequest"/>
+            <output message="tns:convertLeadResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="logout">
+            <documentation>Logout the current user, invalidating the current session.</documentation>
+            <input  message="tns:logoutRequest"/>
+            <output message="tns:logoutResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="invalidateSessions">
+            <documentation>Logs out and invalidates session ids</documentation>
+            <input  message="tns:invalidateSessionsRequest"/>
+            <output message="tns:invalidateSessionsResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="getDeleted">
+            <documentation>Get the IDs for deleted sObjects</documentation>
+            <input  message="tns:getDeletedRequest"/>
+            <output message="tns:getDeletedResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="getUpdated">
+            <documentation>Get the IDs for updated sObjects</documentation>
+            <input  message="tns:getUpdatedRequest"/>
+            <output message="tns:getUpdatedResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="query">
+            <documentation>Create a Query Cursor</documentation>
+            <input  message="tns:queryRequest"/>
+            <output message="tns:queryResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+            <fault  message="tns:MalformedQueryFault" name="MalformedQueryFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidQueryLocatorFault" name="InvalidQueryLocatorFault"/>
+        </operation>
+
+        <operation name="queryAll">
+            <documentation>Create a Query Cursor, including deleted sObjects</documentation>
+            <input  message="tns:queryAllRequest"/>
+            <output message="tns:queryAllResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+            <fault  message="tns:MalformedQueryFault" name="MalformedQueryFault"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidQueryLocatorFault" name="InvalidQueryLocatorFault"/>
+        </operation>
+
+        <operation name="queryMore">
+            <documentation>Gets the next batch of sObjects from a query</documentation>
+            <input  message="tns:queryMoreRequest"/>
+            <output message="tns:queryMoreResponse"/>
+            <fault  message="tns:InvalidQueryLocatorFault" name="InvalidQueryLocatorFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+        </operation>
+
+        <operation name="search">
+            <documentation>Search for sObjects</documentation>
+            <input  message="tns:searchRequest"/>
+            <output message="tns:searchResponse"/>
+            <fault  message="tns:InvalidSObjectFault" name="InvalidSObjectFault"/>
+            <fault  message="tns:InvalidFieldFault" name="InvalidFieldFault"/>
+            <fault  message="tns:MalformedSearchFault" name="MalformedSearchFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="getServerTimestamp">
+            <documentation>Gets server timestamp</documentation>
+            <input  message="tns:getServerTimestampRequest"/>
+            <output message="tns:getServerTimestampResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="setPassword">
+            <documentation>Set a user's password</documentation>
+            <input  message="tns:setPasswordRequest"/>
+            <output message="tns:setPasswordResponse"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:InvalidNewPasswordFault" name="InvalidNewPasswordFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="resetPassword">
+            <documentation>Reset a user's password</documentation>
+            <input  message="tns:resetPasswordRequest"/>
+            <output message="tns:resetPasswordResponse"/>
+            <fault  message="tns:InvalidIdFault" name="InvalidIdFault"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="getUserInfo">
+            <documentation>Returns standard information relevant to the current user</documentation>
+            <input  message="tns:getUserInfoRequest"/>
+            <output message="tns:getUserInfoResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+        <operation name="sendEmail">
+            <documentation>Send outbound email</documentation>
+            <input  message="tns:sendEmailRequest"/>
+            <output message="tns:sendEmailResponse"/>
+            <fault  message="tns:UnexpectedErrorFault" name="UnexpectedErrorFault"/>
+        </operation>
+
+    </portType>
+
+    <!-- Soap Binding -->
+    <binding name="SoapBinding" type="tns:Soap">
+        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <operation name="login">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="LoginScopeHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="LoginFault">
+                <soap:fault name="LoginFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="describeSObject">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="LocaleOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="describeSObjects">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="LocaleOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="describeGlobal">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="describeLayout">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="describeSoftphoneLayout">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="describeTabs">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="create">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
+                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="update">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
+                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="upsert">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
+                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="merge">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="AssignmentRuleHeader"/>
+                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="delete">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="UserTerritoryDeleteHeader"/>
+                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="undelete">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="emptyRecycleBin">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="retrieve">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
+                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+            <fault name="MalformedQueryFault">
+                <soap:fault name="MalformedQueryFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="process">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="convertLead">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="AllowFieldTruncationHeader"/>
+                <soap:header use="literal" message="tns:Header" part="DebuggingHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:header use="literal" message="tns:Header" part="DebuggingInfo"/>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="logout">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="invalidateSessions">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="getDeleted">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="getUpdated">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="query">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
+                <soap:header use="literal" message="tns:Header" part="MruHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+            <fault name="MalformedQueryFault">
+                <soap:fault name="MalformedQueryFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidQueryLocatorFault">
+                <soap:fault name="InvalidQueryLocatorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="queryAll">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+            <fault name="MalformedQueryFault">
+                <soap:fault name="MalformedQueryFault" use="literal"/>
+            </fault>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidQueryLocatorFault">
+                <soap:fault name="InvalidQueryLocatorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="queryMore">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="QueryOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidQueryLocatorFault">
+                <soap:fault name="InvalidQueryLocatorFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="search">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidSObjectFault">
+                <soap:fault name="InvalidSObjectFault" use="literal"/>
+            </fault>
+            <fault name="InvalidFieldFault">
+                <soap:fault name="InvalidFieldFault" use="literal"/>
+            </fault>
+            <fault name="MalformedSearchFault">
+                <soap:fault name="MalformedSearchFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="getServerTimestamp">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="setPassword">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="InvalidNewPasswordFault">
+                <soap:fault name="InvalidNewPasswordFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="resetPassword">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:header use="literal" message="tns:Header" part="EmailHeader"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="InvalidIdFault">
+                <soap:fault name="InvalidIdFault" use="literal"/>
+            </fault>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="getUserInfo">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+        <operation name="sendEmail">
+            <soap:operation soapAction=""/>
+            <input>
+                <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
+                <soap:header use="literal" message="tns:Header" part="CallOptions"/>
+                <soap:body parts="parameters" use="literal"/>
+            </input>
+            <output>
+                <soap:body use="literal"/>
+            </output>
+            <fault name="UnexpectedErrorFault">
+                <soap:fault name="UnexpectedErrorFault" use="literal"/>
+            </fault>
+        </operation>
+
+    </binding>
+
+    <!-- Soap Service Endpoint -->
+    <service name="SforceService">
+        <documentation>Sforce SOAP API</documentation>
+        <port binding="tns:SoapBinding" name="Soap">
+            <soap:address location="https://www.salesforce.com/services/Soap/u/15.0"/>
+        </port>
+    </service>
+</definitions>
+




More information about the teiid-commits mailing list