Ready to get started?

Download a free trial of the XML ODBC Driver to get started:

 Download Now

Learn more:

XML Documents Icon XML ODBC Driver

The XML ODBC Driver is a powerful tool that allows you to connect with live XML data stores, directly from any applications that support ODBC connectivity.

Access XML data like you would any standard database - read, write, and update etc. through a standard ODBC Driver interface.

Import XML Data into FileMaker Pro



Create reports that integrate XML data in Filemaker Pro.

One of the strengths of the CData ODBC driver is its ubiquitous support across many applications and platforms. In this article, you will configure the ODBC driver in FileMaker Pro and create data visualizations with XML data.

Query XML Data in FileMaker Pro

If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. See the "Getting Started" chapter of the help documentation for a guide to creating a DSN on Windows or Unix-based systems like Mac OS X and Linux.

See the Getting Started chapter in the data provider documentation to authenticate to your data source: The data provider models XML APIs as bidirectional database tables and XML files as read-only views (local files, files stored on popular cloud services, and FTP servers). The major authentication schemes are supported, including HTTP Basic, Digest, NTLM, OAuth, and FTP. See the Getting Started chapter in the data provider documentation for authentication guides.

After setting the URI and providing any authentication values, set DataModel to more closely match the data representation to the structure of your data.

The DataModel property is the controlling property over how your data is represented into tables and toggles the following basic configurations.

  • Document (default): Model a top-level, document view of your XML data. The data provider returns nested elements as aggregates of data.
  • FlattenedDocuments: Implicitly join nested documents and their parents into a single table.
  • Relational: Return individual, related tables from hierarchical data. The tables contain a primary key and a foreign key that links to the parent document.

See the Modeling XML Data chapter for more information on configuring the relational representation. You will also find the sample data used in the following examples. The data includes entries for people, the cars they own, and various maintenance services performed on those cars.

When you configure the DSN, you may also want to set the Max Rows connection property. This will limit the number of rows returned, which is especially helpful for improving performance when designing reports and visualizations.

You can then load XML data into tables in Filemaker Pro:

  1. In your solution, click File -> Import Records -> ODBC Data Source, and select the CData XML DSN.
  2. In the resulting SQL Query Builder wizard, select tables and columns and then click Insert into SQL Query. You can edit this query directly. For example:

    SELECT [people].[personal.age] AS age, [people].[personal.gender] AS gender, [people].[personal.name.first] AS first_name, [people].[personal.name.last] AS last_name, [vehicles].[model], FROM [people] JOIN [vehicles] ON [people].[_id] = [vehicles].[people_id]

    You can use the UI to build filters in the WHERE clause by clicking the WHERE tab.

  3. In the resulting Import Field Mapping wizard, you can define mappings from columns in the data source to the columns in a destination table. To create a new table for the query results, select New Table ("CData XML Source") from the Target box, and click Import.

For more information on the SQL that the driver supports out of the box, see the help documentation.

Process Data at Design Time

You can sort and aggregate data, as well as calculate summary functions, while you browse tables. To manipulate the view of data at design time, first complete the two steps below:

  1. Switch to Browse mode: Click the Mode pop-up menu in the footer of the application.
  2. Switch to Table view: Click the table icon in the View As menu in the main toolbar of the application.

Aggregate and Summarize

Follow the procedure below to group column values and then display a summary, as shown in the screenshot below:

  1. Sort: Click the arrow in the [ personal.name.first ] column header and then click Sort Ascending in the resulting menu.
  2. Group: In the menu for the [ personal.name.first ] column click Add Trailing Group by [ personal.name.first ] to group the values and create a subsequent row where summary calculations can be inserted. Click Add Leading Group to introduce the group with a summary.
  3. Summarize: In the menu for a column that has been grouped, select a summary from the Trailing Subtotals menu.

the procedure below to create a simple bar chart that shows the total [ personal.name.last ] for each [ personal.name.first ].

  1. Click the arrow in the [ personal.name.last ] column header and click "Chart by [ personal.name.last ]" in the menu. If you have already grouped on a column in the Table view, [ personal.name.first ], for example, you can select the option to chart [ personal.name.last ] by [ personal.name.first ].
  2. In the Chart Setup window, select columns to draw the chart: To add the column for the x-axis, click the button next to the Data box.

Selecting the x-axis and y-axis will draw the chart. You can also process data in the Chart Setup: Set the following options to create a basic chart.

  1. Click the button next to the Data box and select Specify Field Value. Select a column in the resulting dialog.
  2. Select a summary for the y-axis in the Summary menu.