About Data Paths

Data paths are sorted lists of paths used to locate resources such as files, profiles, and links. The application uses data paths to resolve external references when the relative path of a resource cannot be found.

The following topics are discussed:

Related Topics
Data Paths

General Information

This topic provides general information about data paths.

Data paths:

  • Are not used when resource paths are absolute.
  • Unify and extract the location of absolute paths from data files for easy modification.
  • Support local, UNC, HTTP, and FTP paths.
  • Are stored in files ( DataPath.xml by default) that can be shared by users working on the same project.
  • Provide a mechanism for specifying common paths to avoid path duplication:
    • Global ( DataPath.CommonGlobalList) paths are appended to all other path lists
    • Profiles ( DataPath.CommonProfileList)paths are appended to profile path lists

Notes:

  • Path order is important; when a resource is found, the search stops.
  • Data paths do not support paths with variables (such as %USERPROFILE%\folder).
  • The first time a user runs Composer, a DataPath.xml file is created in the User folder. See Application Paths.
  • Searching many paths to locate resources increases document load time. For best performance, minimize the number of paths and list heavily used paths first.
  • Edit data path files with a text editor. You cannot edit the file from the Data Paths page.

Specifying the DataPath File

Specify your data path file on the Data Paths page.

The default is DataPath.xml in your User folder. This location is stored in the following registry setting:

HKEY_CURRENT_USER\Software\Dassault Systemes\Composer\Preferences\DataPath.PathFolderDataPath

To have multiple users on the same machine reference the same data path file, define a HKEY_LOCAL_MACHINE key:

HKEY_LOCAL_MACHINE\Software\Dassault Systemes\Composer\Preferences\DataPath.PathFolderDataPathInstall

This HKEY_LOCAL_MACHINE key is not defined by default. The HKEY_CURRENT_USER value overrides HKEY_LOCAL_MACHINE.

Note: The full paths for these keys are operating-system dependent.

Behavior on Save

When a .smgXml file is saved, changes might be applied to its references to keep the link between the child files (which are not saved) and the root (which can be stored in another folder).

In this case:

  • Absolute references are not modified.
  • Relative references resolved during loading using data paths are not modified. However, if a relative reference is resolved through the parent file paths, the absolute resolved file path is used to compute the new relative path to its parent.
  • Missing files cannot be resolved, so their parent file paths are used to try to compute their new relative paths.

This behavior is available for project ( .smgProj), product ( .smgXml), and scenario ( .smgSce) files. You can change the behavior using the Resolve relative references on save option. You can disable the relative path resolution completely (Always) or only for unresolved paths ( Only resolved paths). The default behavior on save is to always resolve relative paths (apply modifications on these paths as described above).

Tags

The following tags can appear in a data path XML file.

Tag Description
Common  
DataPath.CommonGlobalList Paths appended to all other path lists
DataPath.CommonProfileList Paths appended to all profile path lists
Composer Files  
DataPath.GeometryList Geometry files ( .smgGeom)
DataPath.MetaPropertyList Meta-property definition files ( .smgMeta)
DataPath.ProductList Product files ( .smgXml)
DataPath.ScenarioList Scenario files ( .smgSce)
DataPath.ViewList View files ( .smgView)
Resources  
DataPath.LinkList Resources referenced by event links and Link actors
DataPath.TextureList Texture image files (all supported image-file formats)
Profiles  
DataPath.BOMList BOM workshop profiles ( .smgBOMSet)
DataPath.ClashList Clearance Checking workshop profiles ( .smgClashStaticSet)
DataPath.ClashRTList Interactive Clearance Checking profiles ( .smgClashRTSet)

Note: Profiles are not available in the Interactive Clearance Checking workshop.

DataPath.FilterList Filters workshop filter definitions ( .smgFilterSet)
DataPath.HiResList High Resolution Image workshop profiles ( .smgHighResSet)
DataPath.Profiles.PublishHTML HTML profiles ( .smgPublishHtmlSet). These profiles define the features in HTML output.
DataPath.Profiles.VideoList Video workshop profiles ( .smgVideoCameraSet)
DataPath.Profiles.ViewList Views workshop profiles ( .smgViewSet)
DataPath.SimplificationList Simplification workshop profiles ( .smgLODSet)
DataPath.StyleList Styles workshop style definitions ( .smgStyleSet, .sset)
DataPath.VectoList Technical Illustration workshop profiles ( .smgVectoSet, .vset)

Example

The following example shows the syntax of a data path file.

Notes:

  • Search order is determined by the path order in the XML file, not by the number at the end of the Path tags ( <Path1>, <Path2>, etc.). When a resource is found, the search stops.
  • The optional Description parameter provides additional information about the path.

  • Search order is determined by the path order in the XML file, not by the number at the end of the Path tags ( <Path1>, <Path2>, etc.). When a resource is found, the search stops.
  • The optional Description parameter provides additional information about the path.

<CLitDataPathSet> <DataPath.CommonGlobalList > <Path2 Value="chemin1" Description="Global resource location" /> </DataPath.CommonGlobalList> <DataPath.CommonProfileList > <Path0 Value="C:\My Documents\Composer\User"/> </DataPath.CommonProfileList> <DataPath.FilterList > <Path0 Value="http://datapath/Composer"/> <Path2 Value="path1"/> <Path1 Value="path2"/> </DataPath.FilterList> <DataPath.GeometryList > <Path2 Value="\\server1\Geometry\ProductID\" Description="ACME project files"/> <Path1 Value="\\server2\Geometry\ProductID\"/> </DataPath.GeometryList> <DataPath.LinkList > <Path2 Value="http://globalweb/Composer"/> <Path1 Value="C:\Documents and Settings\dgoss\My Documents"/> <Path3 Value="ftp.3ds.com/fra/files"/> </DataPath.LinkList> <DataPath.ScenarioList > <Path2 Value="\\server1\Scenario\animation1\"/> <Path1 Value="c:\Scenario\animation1"/> </DataPath.ScenarioList> . . . </CLitDataPathSet>