DB.XML

DB.XML (Database-centric XML) is an XML file format for importing and exporting Oracle Transportation Management data.

The DB XML tool facilitates the direct query/update of data directly from/to the Transportation and Global Trade Management Cloud database tables. As such, the tool should only be used by those already familiar with the responsibilities and capabilities that come with using such tools and who may already be familiar with database tools. Each import or export request is limited to 10 MB.

Note: Updates made directly to the Transportation and Global Trade Management Cloud database by DB XML Import can only ensure data consistency with respect to the standard database constraints, e.g. Primary Key, Foreign Key, and Check constraints. Imports do not flow through the main application logic for updates, and so cannot check that the business context of a particular change makes sense. For example, the status of a particular object (e.g. LOCATION STATUS) can be updated. Import can only check that the status GID is valid but not that the status, possibly in association with other status values, constitutes an appropriate state for the object to be in.

In the DB XML file, there can be more than one parent element for each business object contained within what is called a Transaction Set. The TRANSACTION_SET element is used to contain these parent elements. The parent element itself may contain one or more child element. DB XML Import and Export can work with complete parent-child table relationships all in one file by using corresponding parent-child elements. The attribute values on each element correspond to column values.

Note: The convention used here is that a table is called the "child" table if it contains a foreign key to another table. The table referenced by the foreign key is called the "parent".

These parent elements typically correspond to the primary Transportation and Global Trade Management Cloud data objects – AGENT, LOCATION, etc., and child elements typically correspond to associated child tables. For example, for the LOCATION parent table, the child table could be LOCATION_REFNUM, LOCATION_STATUS, etc.

In the case where the transaction set is used for data import, each parent element will, by default, be treated as a distinct transaction, i.e. the parent element and all its child elements are saved to the database as one atomic transaction. If one child element fails, the parent element transaction fails. The failure of one parent element does not directly affect the transactions for other parent elements. Additionally, all parent elements can be treated as one unit of work i.e. if one element fails, ALL elements in the ‘set’ will fail. The details on how this is achieved are covered in the DB.XML chapter.

Oracle Transportation Management ignores element and attribute names that do not correspond to valid database table or column names. This allows you to comment your DB.XML file without affecting what is imported.

Why do I Want to use DB.XML?

Compared to CSV (Comma Separated Values), DB.XML supports manipulation of parent-child records as a unit. This gives DB.XML an advantage compared to CSV when updating, for example, rate information. DB.XML also supports column values that contain line breaks and commas, which cannot be imported from a CSV file.

How can I use DB.XML?

There are a few ways to perform a DB.XML export or import:

  • Transportation and Global Trade Management Cloud User Interface
  • HTTP POST to servlet on Transportation and Global Trade Management Cloud application server (requires authentication)
  • SOAP web service

See section 2 DB.XML for details.

Performance Considerations

The primary use case for DB.XML import and export was for the setup of configuration data needed for implementation of business processes. The amount of data that can be imported and exported will be limited by default to 10 GB (gigabytes) in order to protect the server and avoid excessive data retrieval or updates which could affect stability.

The limit can only be increased by server administrators.