Troubleshooting Contenta S1000D
This section contains solutions to some issues you may encounter when using Contenta S1000D.
New S1000D database
- Problem
- I need to start with a new S1000D database.
- Solution/Explanation
- The base S1000D database (s1000d.dmp), which has all Contenta S1000D objects and populated Data Module template objects (one set for each of the S1000D Issues, 2.3, 3.0, 4.0, 4.1, 4.2, and 5.0), on Contenta servers and clients is located at the following locations.
- Contenta home/S1000D_samples/databases/Contenta56_Oracle11g_database
- Contenta home/S1000D_samples/databases/Contenta56_Oracle12c_database
Checking the log file
- Problem
- I need to see the log file to troubleshoot why a Contenta S1000D tool failed unexpectedly.
- Solution/Explanation
- See Log file locations, which follows this topic.
Changing the default tool
- Problem
- In Contenta Web, when I navigate to a data module, the default tool is LiveContent S1000D Preview. Can this be changed to a different tool? The tool I run most often is Arbortext.
- Solution/Explanation
-
An administrator can modify this AppData setting on a per-user basis as follows.
- In Contenta Explorer, select .
- Click .
- Edit the DModule value and change it to the desired tool name, for example, Arbortext.
You can also add default tools for other object types if you wish.
Uploading data fails
- Problem
- I cannot upload any data. I dragged and dropped to the upload page and selected Are these objects already in Contenta?, I received an error message.
- Solution/Explanation
-
This issue occurs when
cookiesis set to false in Tomcat's conf/context.xml file on the Contenta Web server. To resolve this issue, setcookiesto true.
Upload errors
- Problem
-
When I try to upload content, IE displays an error similar to one of the following.
Problems with this Web page might prevent it from displaying properly or functioning properly. In the future, you can display this message by double-clicking the warning icon displayed in the status bar.Error: Automation server cannot create object
- Solution/Explanation
- Check that all the steps to configure the browser to upload were performed. Then restart the Tomcat service on the Contenta Web server.
Upload parser errors
- Problem
- When I try to upload, I receive parser errors.
- Solution/Explanation
-
On the Contenta Web server, you must set the IIS setting
UploadReadAheadto a size that can accommodate your XML files.See the SDL Contenta 1000D Installation and Upgrade section of this documentation for details.
Upload warnings
- Problem
-
I see a message like the following when I try to upload content.
Warning: XML file encoding does not match expected encoding in Contenta. See Contenta S1000D documentation. - Solution/Explanation
- Contenta is expecting the uploaded XML files to match the encoding specified for the type of object being loaded into Contenta.
See the SDL Contenta Support for Encoding Standards document in the Contenta documentation.
Upload well-formed check is slow
- Problem
- When I upload, the well-formed check takes a really long time.
- Solution/Explanation
- In the XML, change the entities to be local, rather than going to the web to validate them. See Configuring the Upload Tool to Use Local Entities for details.
New window link missing in Firefox browser
- Problem
- In the Upload UI on Firefox using Citrix, the link to open a new Upload window is gone.
- Solution/Explanation
- This link is no longer needed.
Finding uploaded DMs or ICNs
- Problem
- I can't find the DMs and ICNs that I uploaded to the database.
- Solution/Explanation
-
The S1000D Upload tool builds the Contenta hierarchy as needed, places DMs into the hierarchy based on the SNS data in the XML, and places ICNs into the hierarchy based on the SNS in the file names.
See How Content is Organized in Contenta S1000D for details of where uploaded content is stored in the Contenta database hierarchy.
Finding uploaded graphics or multimedia objects
- Problem
- I can't find the graphic or multimedia objects that I uploaded to the database.
- Solution/Explanation
- Look in the Graphics container in your Contenta S1000D database. Non-ICN graphics or multimedia objects are uploaded to a container that matches their file extensions. For example, a .swf file is uploaded to SWF under the Graphics container. See How Content is Organized in Contenta S1000D for details of where uploaded content is stored in the Contenta database.
Finding a Program uploaded in a CSV file
- Problem
- I uploaded my CSV file but did not see the Program that I specified listed in the interface.
- Solution/Explanation
- Information in the CSV file is case-sensitive. Check your CSV file to be certain PROGRAM is all uppercase.
Finding an Information Code uploaded in a CSV file
- Problem
- I uploaded my CSV file but did not see the Information Code that I specified for the MNS listed in the interface.
- Solution/Explanation
-
Check your CSV file to be certain this is specified as
Information Code, notinfocodeorincode.
Contenta S1000D fails to create a DMC from a CSV file
- Problem
-
When I try to upload a CSV file, Contenta S1000D fails to create a DMC and displays an error such as the following.
Failed to create DMC because dm type 'gears' is invalid - Solution/Explanation
- Ensure that the CSV file contains Language and Country as its last two columns.
Duplicate DMs
- Problem
- I created a new data module object in Contenta using and later realized that I already had an existing data module with the same name. I had inadvertently created a duplicate data module.
- Solution/Explanation
- Creation of data modules should only be done using Contenta S1000D tools such as S1000D Upload Content, the Define and Manage tools, and Check Out and Check In. These tools do not allow duplicate creation of DMCs.
Items missing from Arbortext Contenta Menu
- Problem
- Contenta S1000D items are missing from the Contenta menu in Arbortext Editor.
- Solution/Explanation
-
Ensure that the following values are assigned to the APTCLASSPATH environment variable.
Contenta_home\System\EpicEditCatMutation.jar
Contenta_home\System\ContentaJavaAPI.jar
Contenta_home\System\jregistry-1.8.1.jar
Contenta_home\encaps\S1000D\XYArborTextPlugin\XyArbortextPlugin.jar
Contenta_home\encaps\S1000D\LSARTools\lib\CaSWSClientLib.jar
Contenta_home\encaps\S1000D\XYArborTextPlugin\jdom.jar
For more information, refer to Configuring Arbortext Editor in the SDL Contenta documentation.
Arbortext Check Out errors
- Problem
-
I see errors such as the following when checking out a module and trying to launch Arbortext Editor.
Error on line 14 in file C:\Program Files\PTC\Arbortext\Editor\arbortext.wcf: [A11054] Invalid value "C:\Program Files\XyEnterprise\Contenta\encaps\S1000D\XyArbortextPlugin\S1000DContentaApplicAssign.xml" for required attribute "name" - Solution/Explanation
- The arbortext.wcf file may have been corrupted. Rename or delete this file and restart Arbortext Editor on your client machine.
Arbortext style and dcf files not used
- Problem
-
My Arbortext style and/or dcf files aren't being used even though these files are in the same dir as my SDL sample schemas. It appears that the SDL schemas delivered to Contenta_home\S1000D_samples\schemas are not found.
Also, if I am disconnected from the internet, Arbortext gives the error
Schema/DTD not foundwhen I open an S1000D module. - Solution/Explanation
-
The Contenta S1000D installation assigns Contenta_home\S1000D_samples\schemas;%D to the environment variable APTCATPATH. Check this path in Arbortext preferences as follows.
- Open Arbortext Editor on your client machine.
- Click .
- Click in the Catalogs field and inspect the value.
If a user deletes the schemas path, for example, C:\Program Files\XyEnterprise\ Contenta\S1000D_samples\schemas, from the Catalogs field, this causes a special Arbortext variable named%Dto be deleted from the arbortext.wcf preferences file. The following example includes %D.
%D is essential; it is expanded by Arbortext to include the paths assigned to APTCLASSPATH. To fix this issue, do the following.<Option name="catalogpath" value="%D;c:\doctypes"/>- Open Arbortext Editor.
- Click Tools > Preferences > File Locations.
- Click in the Catalogs field, go to the end, and add
;%D.
Errors checking out a DM created from a template
- Problem
-
I see errors like the following errors when trying to check out a data module that was created from a template.
Invalid value "0" for required attribute "assyCode"Invalid value "0" for required attribute "disassyCode".
- Solution/Explanation
-
For DMs created from a template, if you see these errors, check that these code fields contain two characters instead of one (that is,
00instead of).0
Graphics not displayed on Check Out in Contenta Web
- Problem
-
On a Contenta Web client, when I check out a DM or SCPM using Check Out, I do not see graphics displayed in my XML editor even though I answered Yes to the Do you want to export graphics? prompt (or my
exportReferencedGraphicsAppData setting is set to yes). - Solution/Explanation
-
An applet may be required to transfer multiple files. Verify that the
cw_xml_co_appletFlagandcw_xml_co_appletFetchFlagcore applet registry settings are enabled. They are located at
Graphics not displayed on Check Out or Fetch
- Problem
-
When I check out a DM or SCPM using Arbortext, Arbortext Check Out, or Arbortext Fetch, I still do not see graphics displayed in Arbortext Editor even though I answered Yes to the Do you want to export graphics? prompt (or my
exportReferencedGraphicsAppData setting is set to yes). - Solution/Explanation
-
In Arbortext Editor, choose and verify the
graphicdisplaysetting is set to on.Also verify the following.
- the checkout directory does not contain '
#' characters in the directory path. The exported filename itself can contain # signs. - the style (.
style) or the document type configuration (.dcf) files are present.
If you do not have access to the graphics (they are not located in a configuration or container on your desktop), they are not exported.
- the checkout directory does not contain '
Multimedia objects not displayed on Check Out
- Problem
-
When I check out a DM or SCPM using Check Out, I do not see multimedia objects displayed in my XML editor even though I answered Yes to the Do you want to export graphics? prompt (or my
exportReferencedGraphicsAppData setting is set to yes). - Solution/Explanation
- The referenced multimedia object's file format requires a plug-in for your XML editor to be installed and configured to display this type of file. If using Arbortext Editor, see the SDL Contenta S1000D Cross-Product Graphics and Multimedia Support Reference.
Insert Reference multimedia errors
- Problem
-
In Arbortext, when I use the option to insert a reference to a multimedia object, Arbortext displays a Script Error message like the following.
This is not a valid file type - IsoView cannot open it. - Solution/Explanation
- Arbortext Editor displays this error message when IsoView cannot open a file. In this case, you do not have a plug-in (ActiveX viewer) for the file format being opened. See the SDL Contenta S1000D Cross-Product Graphics and Multimedia Support Reference.
Insert Reference CGM errors
- Problem
-
In Arbortext, when I use the option to insert a reference to an empty CGM, I see a message about the empty file, followed by a Script Error message like the following.
This is not a valid file type - IsoView cannot open it. - Solution/Explanation
- Arbortext Editor displays this error message when IsoView cannot open a file. In this case, the file cannot be opened because it is empty.
Edit view window not visible
- Problem
- In Arbortext, moving the right pane closer to the end of the editor window, then launching suppressed the edit view window.
- Solution/Explanation
-
The Insert Reference window occupies a vertical piece of the screen, so when it displays, the size of the edit window gets smaller.
Adjust the window sizes to see the edit window.
Validate issues
- Problem
- In Arbortext, when I use the option to generate a BREX compliance report, my results are occasionally chopped off.
- Solution/Explanation
- Resize the window by dragging the column divider, or by dragging the resize gripper (located at the bottom-right coordinates of the window).
Applicability ACT errors
- Problem
-
In Arbortext, when I select the Build Applicability tab in Applicability Manager, I see an error message like the following.
Failed to read ACT content. Cannot proceed to manage applicability. - Solution/Explanation
-
Applicability Manager cannot find the ACT file.
- Ensure that the
<dmref>element in the<idstatus>section of the DM is pointing to the ACT. - Ensure that the ACT file is in the database.
- Ensure that the
Duplicate applicability condition
- Problem
-
In Arbortext, I see an error message like the following in Applicability Manager.
Applicability condition is already defined in the document, cannot insert duplicate. - Solution/Explanation
- Save the applicability with a unique Applicability ID.
Duplicate applicability ID
- Problem
-
In Arbortext, I see an error message like the following in Applicability Manager.
Applicability ID " " is already saved in the repository for this ACT. Do you wish to overwrite the Assert statement that has been saved for this Applicability ID? - Solution/Explanation
-
If you select...
- Yes — Applicability Manager inserts the applicability in the DM, and overwrites the applicability in the database.
- No — Applicability Manager inserts the applicability in the DM, and preserves the applicability in the database.
Missing CIR applicability references
- Problem
- In Arbortext, while editing an Issue 4.1 or higher DM that contains CIR applicability references, I do not see all of my references in the Assign Applicability UI.
- Solution/Explanation
-
If an Issue 4.1 or later DM is using CIR applicability but contains missing or incorrect attribute values that invalidate a CIR reference, the following error is displayed in the Arbortext Editor status bar.
Some CIR applicability references could not be resolved. See latest log file under <Contenta>\logs\XyArbortextPlugin.View the log file, which contains detailed error messages that describe which attributes contain missing or invalid values.
Linkend errors
- Problem
-
When checking in a file from my XML editor, I sometimes encounter
Update linkend of info failederrors. - Solution/Explanation
-
The linkend sequence number (which generates the unique ID to identify the uniqueness of the links) may need to be reset periodically. Over a period of time, the many, various operations performed on a database generate gaps between the link IDs resulting in a very high sequence number that can eventually run over the 32-bit long value limit (2147483647).
SDL recommends that the ResetLinkendSequence.pl script be scheduled and run quarterly in verify mode to check the current sequence number and determine if that number needs to be reset. Refer to Chapter 15, Database Maintenance Commands, in the SDL Contenta Administration of this documentation.
LiveContent S1000D Preview fails
- Problem
- I cannot successfully preview a data module in LiveContent Preview.
- Solution/Explanation
- Ensure that the styles have been copied to the correct directory on the Contenta Web server. See Contenta S1000D Installation and Ipgrade documentation.
LiveContent S1000D Preview parser errors
- Problem
-
When I run LiveContent S1000D Preview, I see an error message like the following.
DModule XML failed to parse. Please check well-formedness of data module. java.lang.IllegalStateException: Root element not set - Solution/Explanation
- LiveContent S1000D Preview is unable to reach the s1000d.org web site to verify entities. To configure LiveContent S1000D Preview to look locally for entities, see
Configuring the Upload Tool to Use Local Entities. LiveContent S1000D Preview uses the same catalog file as the Upload tool.
LiveContent S1000D graphics issues
- Problem
- LiveContent S1000D Preview fails to load an image from a DM.
- Solution/Explanation
- Ensure that Arbortext Editor and ISSOviewer are installed. Also, check the Internet Options and ensure your browser is not running in Protected mode.
Unsupported markup in PM Builder
- Problem
- When I run PM Builder on an existing publication module, I see an error message indicating the publication module contains markup that the PM Builder does not support.
- Solution/Explanation
-
If you run PM Builder on a Publication Module that contains markup that PM Builder does not support, PM Builder displays an error message listing the unsupported tags and/or attributes that were found in that Publication Module. Note that PM Builder supports all markup in the PM idstatus section of the PM but only the most frequently used markup in the content section.
For example, the PM Builder tool does not support xlinks. To modify the PM, either edit in your XML editor or remove the offending markup and edit it in PM Builder.
Unsupported change tracking in PM Builder
- Problem
-
When I run PM Builder on an existing Publication Module, I see the following message.
Error: Pub Module contains unsupported Arbortext change tracking markup. You must accept or reject all changes in Arbortext before running PM Builder. - Solution/Explanation
-
PM Builder has detected
atict:addoratict:deltags in the Publication Module, indicating that all changes have not yet been accepted or rejected. You must accept or reject all changes in Arbortext Editor.
PM Builder fails to find a DM found by Validate
- Problem
- When I ran Validate on a publication module, Validate found references to two Data Modules, but when I ran PM Builder on the same publication module, I could not see one of the data modules.
- Solution/Explanation
-
Build PM tab contains the hierarchy of the <content> section of the Publication Module. Data Modules that are referenced in the <idstatus> (3.0 data) or <identAndStatusSection> (4.0 data) section of the Publication Module are not visible in the Build PM tab. Note however that PM Builder preserves everything in the idstatus section.
Validate incorrectly marks some referenced modules missing
- Problem
-
When I run Validate on a publication module, I see
MISSINGfor modules that are referenced and valid in the PM. - Solution/Explanation
-
This may happen if the publication module has not been edited for some time.
Open the PM either in PM Builder or in your XML editor, save and check in the changes, and then run Validate again.
Validate fails to find BREX DM
- Problem
-
When I run Validate on my data modules, check Validate BREX, then select Start Validation, Validate returns an error message like the following even though the BREX DM has been uploaded into my database.
Not validated - Missing BREX DM - Solution/Explanation
-
If your database contains multiple configurations, and you do not have access to all configurations, the BREX DM may be in a configuration that is not on your desktop.
In this case, if you select
Validate Referencesand then Start Validation, Validate returns anOK/ACCESS DENIEDmessage. BREX DMs and other DMs and graphics that are shared across multiple projects/programs need to be uploaded into a shared configuration that is on all users' desktops.
Prior DDN Export or Administration Log links fail
- Problem
- When I run DDN Export or Publish, and select the Prior DDN Export or Administration Log link in the DDN Export UI or the Administration Log link in the Publish UI, nothing happens.
- Solution/Explanation
- Disable your browser's pop-up blocker or add the Contenta Web server to the allowed sites in the pop-up blocker.
Publishing a PM containing references to multiple configurations fails
- Problem
-
When I publish a publication module that contains references to data modules in two different Contenta configurations, publish fails with an error message such as the following.
[ERROR]Failed to Select /#1/#2/pm1/#566/#567/#901/#902/#903/#904/#905 - OLE exception from "PCMPortal": Server side portal error: */Global/sysadmin/pm1/S1000D_config2 (/#1/#2/#575/#566): Not Found Win32::OLE(0.1709) error 0x8004e06d in METHOD/PROPERTYGET "Select" - Solution/Explanation
- To publish a publication module that references data modules in different configurations, both configurations must exist on the user's desktop even if they are read-only. The error message displays the Contenta idpath of the object.
Publishing to LiveContent S1000D fails
- Problem
- I cannot publish to LiveContent S1000D.
- Solution/Explanation
-
Check that you have configured LiveContent S1000D correctly.
Refer to the Contenta S1000D Installation and Upgrade topics in this documentation.
Publish to LiveContent S1000D parser errors
- Problem
-
When I try to publish to LiveContent S1000D, I get parsing errors such as the following on DMs that contain character entities.
[ERROR] Error parsing C:\Program Files\XyEnterprise\LiveContentData\ temp\publications\pmc_...\source_xml\DMC-... .xml xml file. - Solution/Explanation
- LiveContent S1000D Publish cannot find the ISOentities files. Follow the procedure for LiveContent publish in Configuring publishing to resolve entities locally.
Publish to LiveContent S1000D multimedia warnings
- Problem
-
When I publish to LiveContent S1000D and my publication contains multimedia formats such as mov, mp3, rm, wav, wma, or wmv, publish completes with warning messages such as the following.
[WARNING] Unable to determine type of file (file_new.wav). Moving to error directory - Solution/Explanation
-
Your pub config file(s) are out of date. Obtain the latest PublishConfiguration.xml file from the distribution directory on the CW server (Contenta_home/distr/web/cw_common/custom/S1000D_Publish) and merge the changes into your existing pub config file(s). In this case, the
parameter has been updated with additional graphics formats that LiveContent supports.LiveContent_GraphicFormats
Publish to LiveContent S1000D search warnings
- Problem
-
When I publish to LiveContent S1000D, Publish completes with a warning such as one of the following.
[WARNING] LiveContent_MaxSearchResultsFullText value (250) must be greater than or equal to LiveContent_MaxSearchResultsCategorical value (500).[WARNING] If LiveContent_MaxSearchResultsCategorical is set, LiveContent_MaxSearchResultsFullText must also be set.[WARNING] If LiveContent_PartitionSearchResults is set to yes, LiveContent_SearchResultsPartitionSize must also be set.
- Solution/Explanation
- The warning messages explain which settings are invalid and why. S1000D Publish validates the four search pagination parameters in the PublishConfiguration.xml file.
Publish to PDF fails
- Problem
- I cannot publish to PDF. How can I troubleshoot the publish process?
- Solution/Explanation
- In the Publish window, select Save Exported Files. When publishing to PDF, selecting Save Exported Files preserves the Contenta temp directory contents on the Contenta Web server (XPP RESTful Web Services input files and drive file).
Publish to PDF fails with "missing configuration parameter" error
- Problem
-
When I publish to PDF, Publish fails with the following error.
Missing required PublishConfiguration.xml parameters: xppHandle. - Solution/Explanation
- If you see this error or a similar error in the publish log, your PublishConfiguration.xml file (on the Contenta Web server) is missing a required value. In this case, the xppHandle value is missing.
Publish to PDF fails with "invalid configuration parameter" error
- Problem
-
When I publish to PDF, Publish fails with the following error.
XPPPath: Path must not contain empty components: <xpp-class/group/job> - Solution/Explanation
- If you see this error in the publish log, your PublishConfiguration.xml file (on the Contenta Web server) contains an invalid value. In this case, the required xppHandle value is blank.
Publish to PDF fails with "no output PDF" error
- Problem
-
When I publish to PDF, Publish fails with the following error.
[ERROR] Found no output PDF. Check this log for XPP Pub errors. - Solution/Explanation
-
Check that the
XYV_TMPSenvironment variable on the XPP server is set to a directory that exists, such as C:\temp.
Published output not in specified directory
- Problem
- When I publish PDFs or IETMs, Publish appears to finish, but no output appears in the directory specified in the publish configuration file.
- Solution/Explanation
-
In the publishing configuration file (PublishConfiguration.xml) on the Contenta Web server, make sure there are quotation marks around the
CW_ContentaView_FilePathpath (the output directory for SDL XPP PDFs) or DataDir (the output directory for Contenta S1000D).
Viewing Publish to PDF log files
- Problem
- When I publish to PDF, the tool does not complete. Where can I find the log file?
- Solution/Explanation
- If the publish process fails in an unexpected manner, examine the log file, which is located in Contenta_home/temp/PMC-name-issue#-issuedate.timestamp-PID#/PMC-PMC_name-timestamp-PID#-Publish.log (be sure to select Save Exported Files in the Publish window to preserve the Contenta temp publish directory).
Finding a Published IETM or PDF
- Problem
- After I published an IETM or a PDF, I closed my log file and closed the Publish window. How can I find the IETM or PDF that I just published? I can no longer access the link in the log file.
- Solution/Explanation
-
The IETM or PDF is stored on the Contenta Web server. The location on the Contenta Web server is specified by the
CW_ContentaView_FilePathsetting in the PublishConfiguration.xml file (the default location is Contenta_home/web/cw_common/custom/S1000D_Publish/temp). PDFs are named with the PMC name, the current timestamp (YYYYDDMMHHMMSS), and the process ID to ensure uniqueness, for example, PMC-S99-1234-H99MM-01-FR-FR-20090928175921-123.pdf. For IETMs, check the PublishConfiguration.xml file to make sure the paths are correct.
Missing DM in published IETM or PDF
- Problem
- After I published, a DM I expected to see in my IETM or PDF isn't showing up or is incorrect.
- Solution/Explanation
-
Make sure that the object is not copied into a Dispatcher object for DDN export. Multiple objects with the same name but different object IDs may cause issues.
Always reuse objects into a Dispatcher object in your Contenta S1000D database.
Publish from project completes with change tracking warning
- Problem
-
When I publish from my project and some of the modules being published contain Arbortext Editor change tracking markup, Publish completes with warnings. When I select View Log, I see warning messages such as the following.
[WARNING] Found module containing Arbortext add/delete change tracking markup: module_name.xmlThis message is written to the publish log file for each module that contains add or delete Arbortext Editor change tracking markup.
- Solution/Explanation
- S1000D Publish from a project runs but it does not highlight inserted text and it displays deleted text until you accept or reject all changes in Arbortext Editor.
Publish from stable data completes with change tracking warning
- Problem
-
When I publish and some of the modules being published contain Arbortext Editor change tracking markup, Publish fails with errors. When I select View Log, I see error messages such as the following.
[ERROR] Found module containing Arbortext add/delete change tracking markup: module_name.xmlThis message is written to the Publish log file for each module that contains add or delete Arbortext Editor change tracking markup, followed by this message at the end of the log.[ERROR] You must accept or reject all changes in Arbortext before running S1000D Publish outside a project. - Solution/Explanation
- S1000D Publish from stable data does not run until you accept or reject all changes in Arbortext Editor.
Missing UTF-8 characters in published PDF
- Problem
- When I publish to PDF, I notice that some of my UTF-8 characters are missing. They just quietly disappeared with no indication that they are missing.
- Solution/Explanation
-
The fonts used to publish your PDFs do not contain all of the UTF-8 characters that you need. In your publish configuration files (found in the Contenta_home/web/cw_common/custom/S1000D_Publish directory on your Contenta Web server), add the following additional option to the value of the
xppPsfmtdrv1property-missing.After you republish, any characters that are missing from your fonts will be displayed as black boxes in the PDF, making them easier to spot. The permanent solution is to acquire and configure the necessary fonts. See the SDL XPP documentation for more information.