Generating XML Schemas for Salesforce Business Objects

In this section:

After you browse the Salesforce business object repository, you can generate XML request and response schemas for the object you wish to use with your adapter.


Top of page

x
Schema Location

By default, iWay Explorer stores the schemas it creates in subdirectories under the iWay home directory of the machine on which it is installed. However, using iWay Explorer, you can also export these schemas to any location that you specify on your file system.

The exact location of the schemas differs, depending on whether you deploy iWay Explorer with an iBSP.

When the adapter is used with an iBSP configuration, iWay Explorer stores the schemas in a subdirectory of the iWay installation directory, for example,

iWayHome\config\base\wsdl\schemas\service\Salesforce\Salesforce_Target 

where:

Salesforce_Target

Is the name of the connection (target) to the Salesforce system that you defined using iWay Explorer. Under this directory, iWay Explorer creates subdirectories containing schemas.



x
Procedure: How to Generate a Schema for a Salesforce Business Object

To generate a schema for a Salesforce business object using iWay Explorer:

  1. Connect to a Salesforce target, as described in Configuring and Managing Connections to Salesforce.
  2. Expand a node, for example, Account.

  3. Select the Create_Account method under the expanded node.

    The XML request and response schemas are automatically generated by iWay Explorer.

  4. Click the Request Schema tab in the right pane.

    The XML request schema appears in the right pane, as shown in the following image.

    To view the complete sample XML request schema, see Sample XML Request Schema.

  5. Click the Response Schema tab in the right pane.

    The XML response schema appears in the right pane, as shown in the following image.

    To view the complete sample XML response schema, see Sample XML Response Schema.

  6. To export XML schemas, right-click Create_Account in the left pane, and select Export Schema(s), as shown in the following image.

    The Select Export Directory dialog box opens, as shown in the following image.

  7. Navigate to a directory on your file system where you want to export the XML schemas.

    The file path is displayed in the File Name field.

  8. Click OK.

    The XML request and response schemas are now exported to your local file system. The following image shows a sample request schema and a sample response schema that have been exported to a local file system.



x
Reference: Sample XML Request Schema

The following is a sample XML request schema for the Create_Account method.

<?xml version="1.0" encoding="UTF-8" ?>
<!--  Generated by the iBSE 2009-03-19T17:16:04Z --> 
<xs:schema 
targetNamespace="http://www.iwaysoftware.com/salesforce/CreateAccountRequ
est" attributeFormDefault="unqualified" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns:reqAccountCre="http://www.iwaysoftware.com/salesforce/CreateAccount
Request" elementFormDefault="qualified">
<xs:element name="Create-Account-Request">
 <xs:annotation>
   <xs:documentation /> 
 </xs:annotation>
 <xs:complexType>
  <xs:sequence>
   <xs:element minOccurs="1" name="Instance" maxOccurs="unbounded">
    <xs:complexType>
     <xs:sequence>
       <xs:element type="xs:string" minOccurs="1" name="Name"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="Type"
        maxOccurs="1" /> 
       <xs:element type="xs:string" minOccurs="0" name="ParentId"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="BillingStreet"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="BillingCity"
        maxOccurs="1" />
 <xs:element type="xs:string" minOccurs="0" name="BillingState"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0"
        name="BillingPostalCode" maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="BillingCountry"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="ShippingStreet"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="ShippingCity"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="ShippingState"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0"
        name="ShippingPostalCode" maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="ShippingCountry"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="Phone"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="Fax"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="AccountNumber"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="Website"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="Sic"
        maxOccurs="1" />
       <xs:element type="xs:string" minOccurs="0" name="Industry"
        maxOccurs="1" />
       <xs:element type="xs:decimal" minOccurs="0" name="AnnualRevenue"
       maxOccurs="1" />
      <xs:element type="xs:int" minOccurs="0" name="NumberOfEmployees"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="Ownership"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="TickerSymbol"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="Description"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="Rating"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="Site"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="OwnerId"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0"
       name="CustomerPriority__c" maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="SLA__c"
       maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0" name="Active__c"
       maxOccurs="1" />
      <xs:element type="xs:double" minOccurs="0"
       name="NumberofLocations__c" maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0"
       name="UpsellOpportunity__c" maxOccurs="1" />
      <xs:element type="xs:string" minOccurs="0"
       name="SLASerialNumber__c" maxOccurs="1" />
<xs:element type="xs:date" minOccurs="0"
       name="SLAExpirationDate__c" maxOccurs="1" />
     </xs:sequence>
    </xs:complexType>
   </xs:element>
  </xs:sequence>
 </xs:complexType>
</xs:element>
</xs:schema>


x
Reference: Sample XML Response Schema

The following is a sample XML response schema for the Create_Account method.

<?xml version="1.0" encoding="UTF-8" ?>
<!--  Generated by the iBSE 2009-03-19T17:16:04Z -->
<xs:schema 
targetNamespace="http://www.iwaysoftware.com/salesforce/CreateAccountResp
onse" attributeFormDefault="unqualified" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns:respAccountCre="http://www.iwaysoftware.com/salesforce/CreateAccoun
tResponse" elementFormDefault="qualified">
<xs:element name="Create-Account-Response">
 <xs:annotation>
  <xs:documentation />
 </xs:annotation>
 <xs:complexType>
  <xs:sequence>
   <xs:element minOccurs="1" name="Instance" maxOccurs="unbounded">
    <xs:complexType>
     <xs:sequence>
      <xs:element minOccurs="0" name="Error" maxOccurs="unbounded">
       <xs:complexType>
        <xs:sequence>
         <xs:element type="xs:string" minOccurs="0" name="StatusCode"
          maxOccurs="1" />
         <xs:element type="xs:string" minOccurs="0" name="Message"
          maxOccurs="1" />
         <xs:element type="xs:string" minOccurs="0" name="Fields"
          maxOccurs="1" />
        </xs:sequence>
       </xs:complexType>
      </xs:element>
     </xs:sequence>
    <xs:attribute type="xs:boolean" use="required" name="Success" />
   <xs:attribute type="xs:string" name="Id" />
  </xs:complexType>
 </xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

Top of page

x
Null Field Support

iWay Application Adapter for Salesforce now supports null field elements within XML input documents.

For example:

<Upsert-CHG_ACCT__c-Request>
  <ExternalId>upID__c</ExternalId>
  <Instance>
    <OwnerId>00540000000zYqdAAE</OwnerId>
    <Name>1</Name>
    <LastName__c>Scilufo</LastName__c>
    <FirstName__c />    <Salutation__c>Mr.</Salutation__c>
    <RecordTypeID__c>012a0000000cqvP</RecordTypeID__c>
    <Email__c>Joseph_scilufo@ibi.com</Email__c>
    <JDE_Number__c>1383507</JDE_Number__c>
    <Division__c>a0UA0000000IGdNMAU</Division__c>
    <Gender__c>M</Gender__c>
    <MM_E__c>45683423</MM_E__c>
    <Vet_Pro__c>True</Vet_Pro__c>
    <upID__c>10001</upID__c>
  </Instance>
</Upsert-CHG_ACCT__c-Request>

iWay Software