XML (Extensible Mark-Up Language) is a self-describing format that uses tags or elements (<tagName>value</tagName>) to delimit and organize data. The XML format is often used to send data over the Internet, especially when communicating with web applications via web services.
XML Profiles represent the structure of the various XML documents used within Processes, including all the elements, attributes, looping and other configuration information. Many Connectors automatically generate XML Profiles for you to use with various Operations. However, if you have a proprietary XML structure you can build an XML Profile from scratch.
Note: New to XML? Check out W3 School's online tutorial
or the W3C XML Specification
.
Note: The XML document used in the steps below can be found here.
To Create an XML Profile from the Component Explorer
- On the Build menu in the Component Explorer, navigate to the folder in which you want to create the XML Profile.
- Click the blue arrow (
) next to the folder.
- Click the
New Component link.
The Create Component window opens with the folder selected.
- Select Profile from the first list box.
- Type a name for the Profile.
- Select XML from the last list box.
- Click Create.
The component appears on a tab with the name you entered. Below that there are an Options tab, Data Elements tab and an Import button.
XML Profile's Options Tab
On the Options tab you can set the following:
| Name |
Description |
Encoding |
File encoding for the XML data. The available options are:
- UTF-8
- ISO-8859-1
- us-ascii
- UTF-16
- None
|
Respect Min Occurs |
If this check box is on, all elements where Min Occurs is set to 1, including mapped elements that contain no data, will be written out. |
XML Profile's Data Elements Tab
The Data Elements tab displays the actual structure of the XML document. The application uses this configuration to know how to read and write the XML document.
Because XML is a hierarchical structure, the elements and their relationships are represented in a tree structure on the left. The selected element's settings appear on the right.

If you select an attribute in the tree on the left its settings appear on the right.

Data elements represent the various tags and attributes in the XML file. Element names in the Profile need to match the tag and attribute names exactly.
Every XML Profile has exactly one root element. All other elements are contained within this single root element. Elements can be nested within another element to establish parent/child relationships.
To Add, Delete or Configure Elements and Attributes in an XML Profile
You can add one or more child elements, insert one or more sibling elements, delete an element and add one or more attributes to an element. You can insert one or more attributes and delete an element from an attribute.
- On the Build menu in the Component Explorer, navigate to the XML Profile and open it.
- Click the blue arrow (
) next to an element or attribute.
- Select one of the actions from the list.
- Rearrange elements and attributes by dragging and dropping them to a different location in the tree.
- Click an element or attribute in the tree and configure its settings on the right.
- Click Save.
Configuring Elements and Attributes in an XML Profile
Elements and attributes in an XML Profile have the following configuration settings.
| Category |
Name |
Description |
General |
Element/Attribute Name |
Name of selected element or attribute. Must match the actual XML tag/attribute name in the source or destination file. |
General |
Comments |
Free text description. |
General |
Namespace |
Namespace to use for the selected element or attribute. The options are None or "http://www.wc3.com". |
General |
Required (attributes only) |
If the element is being written, then any attributes of that element marked as required will be written out, even if the attribute is not mapped and/or contains no data. |
Field Size Options |
Field Length Validation |
Determines whether data validation should occur on this element or attribute (mandatory, length, etc.). Most often used in conjunction with the Cleanse step. |
Field Size Options |
Minimum Length |
Defines the minimum allowable length of the element or attribute's value. |
Field Size Options |
Maximum Length |
Defines the maximum allowable length of the element or attribute's value. |
Data Format Options |
Data Format Options |
Choose the element or attribute data type and specify a format for the value if required. |
Looping and Repeating Elements in an XML Profile
These settings determine how looping and repeating elements will be handled. Looping elements, such as order line items or contacts within an account, are established by setting the minimum and maximum occurrences appropriately for the element. Repeating elements that do not loop in the normal sense are handled by using constraints.
| Name |
Description |
Min Occurs (Minimum Occurrences) |
The minimum number of times the element can occur. |
Max Occurs (Maximum Occurrences) |
The maximum number of times the element can occur. |
Looping Option |
Unique or by occurrence. |
Here are some tips for using the Min/Max Occurs settings:
- For an optional element, set Min Occurs=0 and Max Occurs=1.
- For a mandatory element, set Min Occurs=1 and Max Occurs=1.
- For an optional looping element, set Min Occurs=0 and Max Occurs=unbounded.
- For a mandatory looping element, set Min Occurs=1 and Max Occurs=unbounded.
Constraints in an XML Profile
If the XML document has multiple instances of the same element (other than in a normal looping context), you can use constraints to define a specific instance of that element, based on its occurrence or the value of the element or one of its child elements. Use the Add and Delete buttons to create or remove constraints for the element.
| Name |
Description |
| Constraint Element |
The element to constrain by. This can be the selected element or one of its child elements or attributes. |
| Type |
- Value -- Constrain the element by a specific text value.
- Occurrence -- Constrain the element by its indexed position.
|
| Value |
The text value or number value to constrain by. |
To Add a Constraint to an Element in an XML Profile
- Select the element in the tree.
- Expand the Constraints section on the right.
- Click Add Constraint.
- In the Constraint Element field, click the Browse icon and select an element from the list.
- Select one of the following constraint types:
Value
Occurrence
- Enter the text or number to constrain by.
- Click Save.
 | Note For example, suppose your XML looked like this:
...
<OrderNotes>
<Note type="specialInstructions">Ship line items immediately</Note>
<Note type="shipMethod">Ground</Note>
</OrderNotes>
...
In order to map to and from a particular "Note" element, you need to use a constraint that references the value of the "type" attribute. Start by defining two "Note" elements with "type" attributes in the tree. For the first, add a constraint and choose the "@type" attribute as the Element, select "Value" as the Type, and enter "specialInstructions" as the Value. Do the same for the second but enter "shipMethod" as the Value. When you look at the profile in a map, you will see two separate "Note" elements to map to and from. |
Namespaces in an XML Profile
Namespaces are a way to qualify XML elements with a prefix to avoid naming conflicts. If your XML document uses namespaces they must be configured in the XML Profile. Namespaces must be declared before they can be used within the document. The namespace declaration is made in a given element, but then can be used by its child elements. Use the Add and Delete buttons to declare or remove namespaces for the element.
| Name |
Description |
| Namespace |
The namespace to use for this element. Lists all available namespaces declared within this element or its parents. |
| URI |
Used to identify this namespace. It is typically an internet URL similar to this:
|
| Prefix |
Prefix to use with this namespace. All elements in the document with the prefix are associated with this namespace. |
| Comments |
Free text description. |
| Default |
If checked, all elements in the document without a prefix are associated with this namespace. The default namespace is typically declared in the root or other high-level element. There is no need to specify a prefix. |
XML Profile's Import Wizard
If you need to work with a proprietary XML format other than the ones required by the Dell Boomi AtomSphere application Connectors, you can automatically generate the Profile from an XML Schema Definition (XSD file) or even a sample XML file by using the Import Wizard.
To Generate an XML Profile from an XML or XSD File
- On the Build menu in the Component Explorer, navigate to the XML Profile and open it.
- On the tab named for your XML Profile, click the Import button.
- Select the type of file to use to build your XML Profile:
XML File
XML Schema
- Click Browse, locate and select the file and click Open.
- Do one of the following:
If you are importing an XML file, click Next and you are done. Skip to step 10.
If you are importing an XML schema and it does not reference other schema files, click Next and you are done. Skip to step 10.
If you are importing an XML schema and it does reference other schema files, follow the steps below.
- (Optional) The XML Import Wizard provides a list of missing schemas. If you do not want to import them, click Ignore Missing Schemas and then skip to step 10.
- To import a referenced schema, click Browse, locate and select the schema and click Open.
The referenced schema appears in the list.
Note: This is a recursive step, so if the missing schemas in turn reference other schemas you will need to repeat this step until all dependent schemas are imported.
- Repeat the previous step for each referenced schema, then click Next.
- Select the root element to use for this XML Profile and click Next.
- Click Finish and review the XML Profile's elements.
Important: You will most likely need to manually modify the XML Profile by setting the minimum and maximum occurs, removing repeated elements and/or groups of elements and setting data types and formatting.