3DXML File Documentation


Summary

A Dassault Systèmes 3D XML file (.3dxml) is a lightweight 3D model in Dassault’s open “3D XML” format, used to share CATIA and SOLIDWORKS designs with people who have no CAD software. It is technically a ZIP archive of XML plus tessellated 3D representation data. View it free with Dassault’s 3D XML Player (Windows) or the open-source GLC_Player (Windows, macOS, Linux). Its MIME type is application/vnd.3dxml. It is a visualization format, so recovering editable CAD geometry from it is limited — for real interchange, ask the sender for a STEP file.

Technical details

FeatureValue
Full nameDassault Systèmes 3D XML File
File extension.3dxml
MIME typeapplication/vnd.3dxml
Format typeLightweight 3D package: XML + tessellated representation data
DeveloperDassault Systèmes
Introduced2005 (format and free 3D XML Player)
Container / base formatZIP archive
Magic number50 4B 03 04 (“PK”, ZIP local file header)
Internal partsManifest XML, product structure / BOM XML, .3DRep geometry
Geometry typeTessellated mesh (not parametric B-rep solids)
Produced byCATIA, SOLIDWORKS, DELMIA, 3DVIA
Open standardPartial — published but vendor-controlled
Best forViewing, review and presentation (like a 3D PDF)
Opens in3D XML Player, GLC_Player, CATIA
Interchange adviceUse STEP from source CAD for editable geometry
Related extensions.catpart, .catproduct, .cgr, .stp/.step, .stl, .jt
Specification3ds.com/3d-xml
File signature (magic bytes)
50 4B 03 04

Offset 0, ASCII PK\x03\x04. A .3dxml is a ZIP archive, so it begins with the standard ZIP local-file-header signature, the same first bytes as any ZIP. It is identified not by the magic bytes but by its contents: a manifest, one or more XML files describing the scene and product structure (bill of materials), and one or more .3DRep representation files holding the tessellated geometry. Rename a .3dxml to .zip and open it to see this XML structure.

What is a 3DXML file?

A .3dxml file is a lightweight 3D model saved in 3D XML, a format Dassault Systèmes created in 2005 to share 3D designs in documents, manuals, web pages and marketing material without needing heavy CAD software. The idea was a compact, XML-based way to publish a model, released alongside a free 3D XML Player so anyone could open and rotate it. The format is produced by Dassault’s own tools — CATIA, SOLIDWORKS, DELMIA and 3DVIA — and can carry meshes, textures and lighting.

The key thing to understand is what kind of 3D it stores. A 3DXML is a downstream publication of a model, closer in spirit to a 3D PDF than to an engineering file: excellent for viewing, reviewing and presenting, but a limited starting point for re-engineering. It holds a tessellated representation (a triangle mesh) rather than the original parametric CAD features. The rest of this page explains the package format and what that mesh-versus-solid distinction means in practice.

A ZIP package of XML and geometry

Technically a .3dxml is a ZIP archive, so it begins with the ZIP local-file-header signature 50 4B 03 04 (“PK”) like any ZIP file, and you can rename one to .zip and open it to inspect the parts. Inside, the structure separates the scene description (XML) from the geometry (binary representation files):

model.3dxml   (ZIP archive)
 ├─ manifest / root XML     entry point: lists the parts in the package
 ├─ product structure XML   the BOM: which components make up the scene,
 │                          and their positions in the assembly tree
 ├─ part_1.3DRep            tessellated geometry for one component
 ├─ part_2.3DRep            ...another component's mesh
 └─ textures / appearance   optional images and material/lighting data

The XML files describe the product structure: which parts exist, how they nest into an assembly, and where each is positioned by a transform. The .3DRep representation files hold the actual geometry as tessellated meshes — triangles with normals — ready for a viewer to draw. Splitting structure from representation is what lets one 3DXML describe a whole assembly of many parts while sharing and positioning their meshes.

Why the geometry is mesh, not solid

This is the single most important technical fact about 3DXML and the source of most confusion around it. Native Dassault CAD files — a CATIA .CATPart or a .CATProduct — store parametric geometry: the boundary-representation (B-rep) solids, the sketches, features and history that let an engineer edit the design. A 3DXML instead carries a tessellated version of that geometry, the triangle mesh a renderer needs to display the surfaces. The mesh is a downstream approximation of the exact surfaces; the features and history that produced it are not in the file. A 3DXML therefore shows the design faithfully but cannot be re-engineered like the source part.

Opening a 3DXML for viewing

Because it is a viewing format, opening one is easy and free. Dassault’s 3D XML Player (Windows, and embeddable in a web page) opens a .3dxml to rotate, zoom, measure and explore the model, which is why product catalogs and web pages can embed an interactive 3D part. The open-source GLC_Player is the best cross-platform choice — it runs on Windows, macOS and Linux and also reads STL, 3DS, COLLADA and OBJ. If you happen to have CATIA, it opens and exports 3D XML natively, but that is overkill for plain viewing.

One correction worth stating: Adobe Acrobat does not open 3DXML. Acrobat handles 3D PDF, which is a different thing; use the 3D XML Player or GLC_Player instead.

Getting the geometry into another format

Because a 3DXML already holds a mesh, converting it to other mesh formats is reasonable. Exporting to STL for 3D printing works well — open the model in GLC_Player or CATIA and save as STL — and you get a printable mesh (choose the resolution before printing). Mesh-to-mesh export to 3DS or OBJ for rendering is similarly fine. You can also produce a 3D PDF or a flat image PDF for reviewers who have no 3D software.

Converting to editable CAD is where the mesh-not-solid limit bites. A .3dxml to STEP/STP conversion (STEP is the universal CAD interchange format) typically yields mesh-quality data, not the clean editable solids STEP is meant to carry, because the original B-rep geometry simply is not in the 3DXML. Converting back to an editable .CATPart is effectively impossible for the same reason: the parametric features and history live only in the source CAD file, and a published 3DXML is a downstream representation. For genuine CAD interchange, the right move is to ask the author for a STEP file exported from CATIA or SOLIDWORKS directly, rather than converting the 3DXML.

References