Skip to main content
Feedback

Object definitions

Use object definitions to merge profile elements from all the operations for a given object type into a superset of fields.

Object definitions define a logical representation of an object type. [The object type is listed within the Operation component.] For example, if your process contains a Salesforce Account Query operation and a Salesforce Account Upsert operation, there are separate profiles for the Account Query response and the Account Upsert request. The object definition creates a generic Salesforce Account object type with fields aggregated from both the Query and Upsert profiles.

When a map component's source and destination profiles are specified in object definitions, that map can be extended with Data map extensions.

For all SDK application connectors and the Salesforce connector, object definitions are generated automatically per connection/object. For non-SDK application connectors, arbitrary XML operations (e.g., XML over HTTP) and flat file operations, you must manually define objects. See the topic To Define Object Definitions for a Process.

Content root

The content root represents the level at which XML profile elements should be merged. This concept does not apply to flat file profiles.

The content root is used to "ignore" header elements not pertinent to the object's fields and to accommodate application profiles that vary between operations. For example, the "Add Customer" and "Modify Customer" request profiles for QuickBooks Online Edition have different top level elements:

QuickBooks Add Customer Request:

<CustomerAddRq>
<CustomerAdd> << CONTENT ROOT
<Name>
<IsActive>
...

QuickBooks Mod Customer Request:

<CustomerModRq>
<CustomerMod> << CONTENT ROOT
<ListID>
<EditSequence>
<Name>
<IsActive>
...

In this example, the content root for each profile should be set to CustomerAdd and CustomerMod, respectively.

Typically, you do not have to manually set the content root for automatically-generated object definitions.

If a content root is not manually set, the XML root element is used.

Aliases

Use aliases to make user-friendly labels for Profile elements. Otherwise, the raw XML profiles may have names that do not make sense to users.

Defining object definitions for a process

Add or edit object definitions in the Extensions dialog.

  1. Open the process and click the Extensions link above the process canvas.

    The Extensions dialog opens.

  2. Select the Object Definitions tab.

  3. Click Add Object Definition.

    The User Defined Object Definition dialog opens.

  4. In the Name field, type the object definition name.

  5. In the Object Type field, type the object type.

  6. In the Selected Profiles list, select the check box adjacent to each profile component to include in the object definition.

  7. Click OK to close the User Defined Object Definition dialog and return to the Object Definitions tab.

  8. For each XML profile component in the object definition, set the Content Root:

    1. Click Choose Content Root for Profile to open a dialog.

    2. Click the name of the element to set as the Content Root.

    3. Click OK to close the dialog and return to the Object Definitions tab.

      If you do not manually set a Content Root, the root element is used.

  9. For each profile component in the object definition, lock fields to prevent them from being customized:

    1. Click Choose Locked Fields for Profile to open the Locked Fields dialog.

    2. For each field you want to lock, select the check box adjacent to the element name.

    3. When you are done locking fields, click OK to close the Locked Fields dialog and return to the Object Definitions tab.

  10. Set aliases:

    1. Click Edit Aliases to open the Aliases dialog.

    2. For each alias you want to set, select the check box adjacent to the element name, and in the adjacent field that appears, type the alias.

    3. When you are done setting aliases, click OK to close the Aliases dialog and return to the Object Definitions tab.

  11. Repeat steps 3–10 for each additional object definition you want to define.

  12. When you are finished defining object definitions, click OK.

  13. Click Save.

After defining object definitions, you need to define data map extensions. See the topic To Define Data Map Extensions for a Process linked below.

On this Page