DS WhitePapers Introduction To XPDM Data Exchange Tofrom 3DEXPERIENCE
DS WhitePapers Introduction To XPDM Data Exchange Tofrom 3DEXPERIENCE
Introduction to XPDM
Data Exchange to/from 3DEXPERIENCE
3DS_Document_2019
© Dassault Systèmes | Confidential Information| ref.: 3DS_Document_2020
Executive Summary
This Best Practices document starts with the basics of XPDM and later also covers
some advanced concepts of XPDM.
This document also provides guidelines for troubleshooting and educating readers
about information and traces to provide to the Dassault Systèmes Support team
while raising a Service Request on the XPDM topic.
This Best Practices document is applicable for all releases from 3DEXPERIENCE
R2021x to 3DEXPERIENCE R2023x.
Disclaimer: This document mainly covers Gateway-less mode and covers only
Engineering exchange scenarios.
2
Best Practices
Table of contents
1. Introduction to XPDM ....................................................................................................... 4
1.1. Comparison with Other Exchange Solutions ................................................................ 4
2. Client and Server Side Components ............................................................................... 4
3. Required Licenses and Access Roles ............................................................................. 5
3.1. Licenses ....................................................................................................................... 5
3.2. Access Roles ............................................................................................................... 6
4. Setting Up Mapping Context ............................................................................................ 6
5. Launching Batch Management ........................................................................................ 9
6. XPDM Import and Export ............................................................................................... 10
6.1. XPDM Export ............................................................................................................. 10
6.1.1. Export Using XPDMImportExport Batch GUI ......................................................... 10
6.1.2. Various Options in XPDM Export ........................................................................... 13
3
Best Practices
1. Introduction to XPDM
XPDM enables the users to exchange the PLM Data between 3DEXPERIENCE
Platform and other external systems like DS Legacy System, Non-DS Systems
(PDMs,ERPs,CRMs, SCM…), and 3DEXPERIENCE. Data exchange is independent of the
system where data is created for instance, 3DEXPERIENCE platform or any external
system.
• XPDM Export: Where PLM Data is exported from the 3DEXPERIENCE Platform
• XPDM Import: Where PLM Data is imported into the 3DEXPERIENCE Platform
Both these exchanges are carried out with the help of a XPDMXML.
XPDMXML is Dassault Systèmes proprietary neutral schema. It is an XML file containing the
PLM structure and non-CAD information.
Note: XPDM Import and Export can be done for Engineering Data and EBOM data. This
document mainly covers Engineering Data exchange.
To
3DEXPERIENCE
3DEXPERIENCE Power'By
V5 file based data FBDI*/XPDM XPDM
VPM V4
DS Legacy VPM V5 DBDI*/XPDM XPDM
Systems
Smarteam
From
xCAD file based data XPDM XPDM
Non-DS Systems(PDMs, ERPs,
XPDM XPDM
CRMs, SCMs,….)
3DEXPERIENCE 3DXML*/XPDM Not possible
Where * is the recommended solution
• Gateway mode
• Gateway-less mode
This document only covers Gateway-less mode.
4
Best Practices
Below image shows the client and server side components for Gateway-less mode.
On Client side: MUX (External System Data User) and Import XPDMXML without
Geometrical Conversion component is required on 3DEXPERIENCE Native Client.
Note: For Power’by Import, only Import XPDMXML without Geometrical Conversion is
required and the MUX component is not required.
3.1. Licenses
The following licenses are required for XPDM exchange scenarios.
5
Best Practices
If a user has installed Import XPDMXML without Geometrical Conversion and has the
UE5 (Collaborative Designer for CATIA V5) role assigned, then the user can import
CATIAV5 data in Power’by mode without a MUX role.
When dealing with XPDM exchanges (Import or Export), setting a Context is mandatory.
Before 3DEXPERIENCE R2019x release, only one default context was provided named,
COEXISTENCE which was usable for FBDI or DBDI exchanges but not for XPDM
From 3DEXPERIENCE R2019x onwards, two default context named, COEXISTENCE and
XPDM are available. The XPDM Context can be used for XPDM exchanges (Import or
Export).
6
Best Practices
Note: This context information is stored in an xml file named Default.xml at the following
<Native-Installation-directory>\B423\win_b64\resources\xml\COEX\CONTEXT
User can also explicitly declare a new XPDM Context for exchanges as per the requirement
using the Exchanges Management native application. Perform the following steps to create
a new XPDM context.
3. In the Context xml section, click New. A dialog box opens that prompts the user to
confirm if the user wants to create a new XML file. Click Yes.
4. In the Context Properties section, add a Name, for example: XPDM1.
5. In the Parameter field, select Database from the drop down list.
7
Best Practices
6. Click […], in the connector, select XPDM and enter SiteId, for example: XPDM1. As
a standard practice, the SiteId should be the same as the context Name.
8
Best Practices
• From Windows Start Menu, user can access Batch Management under Dassault
Systemes 3DEXPERIENCE R2021x.
• From the 3DEXPERIENCE Native client toolbar, go to the Tools tab and click on the
Utility… command.
9
Best Practices
<native_installation_directory>\B423\win_b64\code\bin>CATSTART.exe -run
CATUTIL -env Env -direnv <native_installation_directory>\B423\CATEnv
10
Best Practices
11
Best Practices
10. Monitor the progress of the export process through the Processes tab in the Batch
Monitor window (Batch Management). This tab shows the already completed and in
progress processes for the current session.
The Information column displays whether the process succeeded or failed. If the
process is successful, the Return Code will be 0, else, there will be an error code.
The below image shows that the process has been completed successfully.
12
Best Practices
The below image shows a snippet from the exported XPDMXML file.
13
Best Practices
When user selects the Filter XPDM owned objects option, objects owned by XPDM
are filtered in the structure of the selected object and filtered objects are not
exported.
When this option is selected, the product structure in the XPDMXML file contains
only 3DEXPERIENCE platform-owned objects and partial information about XPDM
owned objects that are referenced by the 3DEXPERIENCE platform-owned objects.
• XPDM owned means that the mastership is on XPDM side.
• 3DEXPERIENCE owned means the mastership is on 3DEXPERIENCE side.
Note: The UniqueID tag inside Object element in the XPDMXML file
contains locationOfControl attribute, which informs the user about the master
system or ownership of the object.
Possible values for locationOfControl are as follows:
14
Best Practices
2. With Documents
When the user selects this option, the documents (such as image, text ...) attached to
the selected object structure are exported.
Note: A standalone document cannot be exported.
For example:
Consider that the user has created a Physical Product and attaches a document to it
as shown in the following image.
When user selects the With Documents option, there will be entries in XPDMXML
file corresponding to the Document as shown in the image below:
15
Best Practices
Apart from this, when With Documents option is used in conjunction with the With
3. With PLMParameters
When the option With PLMParameters is selected, the PLMParameter attached to
the supported object is exported.
For example:
Consider that the user has created a Manufacturing Assembly and then inserts an
Object Parameter as shown in the image below.
16
Best Practices
When user exports the Manufacturing Assembly, the Parameter will export only if you
select the With Parameters option. The below image shows entries corresponding to
the Parameter in the XPDMXML file.
For example:
UniqueID element for 3DEXPERIENCE platform authored object:
<UniqueID External=84442098CEED0D7C05053135526064CD050712D1
XID=84442098CEED0D7C05053135526064CD050712D1 locationOfControl=V6 />
17
Best Practices
For more information about UniqueID, XID and External, refer to the following
Documentation:
Installation and Setup | Administrate | Social and Collaborative |
3DEXPERIENCE Open | Adapter for XPDM | Data Exchange Mechanisms |
Generic Mechanisms | Engineering Exchange | Unique Identification or Search
Criteria
5. With Process
When the user selects this option, the Process objects of PPR data are exported.
Note: The With Process option is enabled only for the PPR MBOM data.
For example:
User has created a manufacturing assembly and creates an implementation link with
process (Work plan system).
18
Best Practices
When the Manufacturing Assembly is exported by selecting the With Process option,
the process (Workplan system) will export. The below image shows entries
corresponding to the process in the XPDMXML file.
Completion type governs at what level the structure will get exported. Here, two
options are available Default and Expand.
6. Default
When user selects the Default option, the complete Product structure will export.
With respect to the Structure shown in the above image objects at all levels will be
exported.
19
Best Practices
The Design File Options govern whether the files associated with the geometry or
document objects are exported. It also controls the 3D and 2D file format. The below
image shows a Product Structure with geometry.
If this option is not selected then the 3D File Format and 2D File Format lists are
unavailable.
With respect to the Product structure shown in the above image, when a user selects
the With Files option, a *.CATPART file will export along with the XPDMXML file.
The *.CATPART file format will be as per the 3D File format.
20
Best Practices
From the 3D File Format list, select an appropriate format. Below are the available
options:
a. Exact
When user selects the Exact option, the authoring data (exact geometry) is
exported along with the XPDMXML file. While exporting, the exact geometry
is converted to a specific CAD format selected in the 3D File Format list.
Note: When the Exact option is selected, the geometry will be exported as a
dump solid. When such data is opened in CATIA V5, it cannot be
modified/edited.
b. Tessellated
When user selects this option, the visualization data is transferred.
Visualization data is extracted from the 3DEXPERIENCE Platform database
and transferred to XPDM. While transferring, the extracted tessellated
geometry is converted to the specific format as per the selected 3D File
Format.
i. If any CATIA level like CATIAV5-6R2020 is selected, the user will get
a file in *.cgr format along with the XPDMXML file as shown in the
following image.
21
Best Practices
ii. If STEP is selected from the 3D File Format, the user will get a file in
*.stp format along with the XPDMXML file.
c. As Specification
When user selects the As Specification option, all 3DShapes with their
specifications are exported.
Note: When the As Specification option is selected, the *.CATPart will
export with all the specifications and features along with the XPDMXML file.
When such data is opened in CATIA V5, it can be modified/edited.
22
Best Practices
For example: Here, a sample Data (XPDMXML file and CAT Part) is taken to import into
3DEXPERIENCE Platform, see the image below.
23
Best Practices
24
Best Practices
25
Best Practices
2. Force Update:
Select Force update to forcefully update an already imported non-modified data
in the database.
Note: If the Force update option is selected, the Simulate Import check box is
not available and vice-versa.
3. Simulate Import:
This option is used to simulate the complete import process without saving the data
in the database.
Using this option, import can be validated without actually creating the data.
In the following example, the user has imported a data set with a particular context.
26
Best Practices
1. Determine the physicalid of the imported data using the below MQL command.
MQL <1> temp query bus * Name * select physicalid;
27
Best Practices
The above image shows that XPDM is the name of the context with which the data is
imported.
1. Launch the XPDMImportExport batch and specify all the necessary parameters as
explained in the respective section for Export and Import using the
XPDMImportExport GUI.
For XPDM Export: Follow step 1-8 mentioned in section 6.1.1, “Export Using
XPDMImportExport GUI”.
For XPDM import: Follow step 1-6 mentioned in section 6.2.1, “Import Using
XPDMImportExport GUI”.
2. Click Save.
3. Select the directory, specify name for the batch parameter file, and click Save. This
will create a batch parameter file which will have all the information that you specified
in step 1.
OR
Execute the following command for running the XPDMImportExport Batch:
CATUTIL -Name XPDMImportExportBatch input_file
Where, input_file is the path and name of the batch parameter file.
For example:
CATUTIL -Name XPDMImportExportBatch
D:\XPDMExport\catutil\BatchParameter.xml
28
Best Practices
7. XPDMXML Structure
As mentioned above in section 1, “Introduction to XPDM”, the XPDM exchanges are carried
out with the help of XPDMXML. XPDMXML is a Dassault Systèmes proprietary neutral
schema. It is an XML file containing the PLM structure and the non-CAD information.
• XPDMXML: It is the main container for XPDMXML file. This helps to identify and
differentiate it from other XML files.
• InfoHeader: This element is present inside the XPDMXML element. It contains
information about XPDMXML in name and value pairs.
It mainly specifies information of options selected while export and other important
information like SouceObjectRef and SourceObjectExternalID.
29
Best Practices
• XPDMXMLStructure:
XPDM exchanges can be done for various domains like Product Domain, EBOM
Domain, Requirement Domain, and so on.
XPDMXMLStructure tag in XPDMXML file specifies the domain of the structure for
the exchange.
For example:
For Product Domain, the XPDMXMLStructure tag will be ProductStructure.
For EBOM Domain, the XPDMXMLStructure tag will be EBOMStructure.
For Requirement Domain, the XPDMXMLStructure tag will be
RequirementStructure.
• Object:
This element is present inside the XPDMXMLStructure element.
A structure is composed of various objects. This element specifies the Objects and
their associated standard and custom properties.
For example:
For ProductStructure, the objects can be Product, ProductInst, Rep3DInst,
Rep3D and Rep3DAggr.
• File:
This element describes information of physical file associated with the XPDMXML
instance file.
It contains information about the file such as Name, Location and Format.
The file is associated with an Object using <FileRef> </FileRef> tag under Object
element and id attribute of the File element.
For example:
<XPDXML>
<InfoHeader></InfoHeader>
<ProductStructure>
<Product>
<Name>TestObject </Name>
----
30
Best Practices
----
<FileRef>ID_3 </FileRef>
</Product>
<File id=ID_3>
<Name>xxx</Name>
<Location>xxx</Location>
<Format>xxx</Format>
</File>
</ProductStructure>
Here, FileRef for the Product named TestObject is ID_3 so the associated File
element will be the element where id is ID_3.
The following images show an example of a Product Structure and its corresponding
XPDMXML file.
Here,
31
Best Practices
• Under Objects, there are attributes/properties like Name, Description, UniqueID and
so on.
• File tag contains name, format and location of the file.
8.1. Ownership
The attributes Owner (object author), Organization and Project (Collaborative Space)
present inside the Object element of a XPDMXML file are used to set the ownership
information of an object.
Note:
• Whenever, a user imports any data in 3DEXPERIENCE using XPDM import and
8.2. Maturity
The attribute Maturity present inside the Object element of a XPDMXML file is used to set
the Maturity of the Object.
Note: Whenever, a user imports any data in 3DEXPERIENCE using XPDM import and some
value is provided to this attributes in XPDMXML, the attribute value should map with the
maturity state of the type.
For example:
If the object is mapped with a VPMReference type then the value for Maturity attribute as per
the OOTB policy (VPLM_SMB_Definition) will be one of the following: PRIVATE, IN_WORK,
FROZEN, RELEASED or OBSOLETE.
32
Best Practices
Note: Maturity value depends on the target object type and more precisely its associated
policy. Policy is declared in the Lifecycle element and the possible values for maturity are
declared in the policy used.
For a particular object, mappingType attribute is present in the XPDMXML which is mapped
with MappingType attribute present in pdm-cust-config.xml. The pdm-cust-config.xml
file contains information about type mapping and attribute mapping for each MappingType.
For Product domain, the following table shows default mapping between 3DEXPERIENCE
platform data model entities and XPDMXML entities:
Product VPMReference
ProductInst VPMInstance
Rep3D 3DShape
Rep3DInst VPMRepInstance
Rep3DAggr 3DShape + VPMRepInstance
Drawing Drawing
DrawingInst VPMRepInstance
DrawingAggr Drawing + VPMRepInstance
33
Best Practices
If user has customized the Data Model on 3DEXPERIENCE side, to integrate the
customized data model in XPDM exchanges, the user has to configure mapping in the pdm-
cust-config.xml file.
<NATIVE_Installation_Path>\win_b64\reffiles\XPG\config\client>
34
Best Practices
Where,
35
Best Practices
36
Best Practices
Multiple reports and log files like XPDMImportExportBatch report, Transfer report,
XPDMXML report, CADIntrospector report and so on are generated in the specified report
directory. The XPDMImportExportBatch report gives the summary of
XPDMImportExportBatch process in an html format.
The report and log files help you to find the reason for data exchange failures.
For more details about reports and log files, refer to the following Documentation:
The documentation explains each error code with a reason and the recommended solution.
Refer to the following Documentation for the same.
37
Best Practices
38
Best Practices
12. References
• Dassault Systèmes Documentation for Adapter for XPDM: Social and Collaborative >
3DEXPERIENCE Open > Adapter for XPDM
• Dassault Systèmes Administrative Documentation for Adapter for XPDM: Installation
and Setup > Administrate > Social and Collaborative > 3DEXPERIENCE Open >
Adapter for XPDM
• Developers Assistance for XPDM: Vertical Integration | XPDM
39
Best Practices
40