ISO 25178-72: XML File Format x3p for Areal Surface Texture Data

Geometrical Product Specifications — Surface Texture: Areal

1. Introduction to the x3p File Format

ISO 25178-72:2017, amended in 2020, defines the XML-based x3p file format for the storage and exchange of areal surface texture data. This standard addresses a critical need in surface metrology: the lack of a universal, open, and vendor-neutral format for three-dimensional surface topography data. The x3p format enables seamless data exchange between different measurement instruments, analysis software, and manufacturing systems.

The x3p format is built upon the XML schema originally developed under the openGPS initiative by the Physikalisch-Technische Bundesanstalt (PTB). It extends the earlier ISO 5436-2 format for profile data to support full three-dimensional areal datasets, making it the de facto standard for surface texture data exchange in both research and industrial applications.

The x3p format is now supported by nearly all major surface metrology software packages, including MountainsMap, SensoMAP, Gwyddion, and SPIP. Adopting x3p as your standard data format ensures long-term data accessibility and interoperability across your measurement workflow.

2. File Structure and Coordinate Systems

An x3p file is stored as a ZIP container containing an XML header file and optional binary data files. The XML header defined by ISO 25178-72 contains metadata describing the measurement, while surface data can be stored either as XML text or as compressed binary arrays within the ZIP package.

2.1 Coordinate Systems

The standard defines two coordinate systems:

Coordinate System Description Usage
Global Coordinate System Three-dimensional, right-handed system defining the position and orientation of the original point cloud Determines the physical location of the measured surface in real-world coordinates
View Coordinate System Three-dimensional, right-handed system in which stored point coordinates are defined Contains the actual measurement data with optional rotation and translation from global coordinates

The Amendment 1 (2020) clarified the coordinate transformation between view and global coordinates using Formula (2), which applies rotation matrix elements r11 through r33, scaling factors Ix/Iy/Iz, and offset values Ox/Oy/Oz to convert dimensionless stored values into physical coordinates in metres.

2.2 Axis Types

The format supports two axis types: incremental (type “I”) and absolute (type “A”). X and Y coordinates can use either type, but Z coordinates must always be absolute. Incremental axes store a single spacing value and assume regular point spacing, significantly reducing file size for raster-scanned measurements. Absolute axes store explicit coordinates for each point, providing flexibility for irregular measurement grids.

While incremental X and Y axes offer substantial memory savings for regular grid measurements (recommended by the standard), care must be taken when converting irregular or multi-resolution datasets. Using absolute axes for such data ensures no spatial information is lost during the conversion process.

3. Data Organization and Vendor Extensions

The x3p format organizes data into a matrix structure defined by SizeX, SizeY, and SizeZ elements. For typical areal surface measurements, SizeZ equals 1 (single surface layer), while SizeX and SizeY define the raster dimensions. The format supports multiple data layers for applications such as multi-spectral imaging or time-series surface evolution studies.

Binary data within the x3p container can be encoded as packed arrays optimized for storage efficiency. The binary validity file format uses a packed bit array to mark valid and invalid data points, with byte and bit positions calculated using the standard’s indexing formulae.

A particularly powerful feature is the VendorSpecificID mechanism for vendor extensions. Vendors can define custom XML elements and place them in the ZIP container under a unique URI-based path. This ensures full forward and backward compatibility — software that does not recognize a vendor extension can safely ignore it while still reading all standard x3p data.

4. Engineering Design Insights

When implementing x3p support in measurement software or selecting an x3p-compatible instrument, consider the following design aspects:

Data Volume Management: A single areal measurement at high resolution can generate millions of data points. Use incremental axis types where possible and leverage the binary encoding options to minimize file sizes without sacrificing precision.

Metadata Completeness: The standard defines comprehensive metadata fields including instrument identification, calibration dates, probing system characteristics, and comments. Populating these fields thoroughly is essential for data traceability and regulatory compliance in industries such as aerospace and medical devices.

Version Control: The Revision record must contain “ISO25178-72:2017/D AM1” for files conforming to the amended standard. Always verify the revision string when exchanging files between different software packages to avoid compatibility issues.

5. FAQs

Q: What software applications support the x3p format?
A: Major surface metrology software including DigitalSurf MountainsMap, Bruker SensoMAP, Gwyddion (open source), and SPIP support x3p. Most modern optical and stylus profilometers can export directly to x3p format.
Q: Can x3p files store profile (2D) data in addition to areal (3D) data?
A: Yes. The x3p format can store profile data (PRF), surface data (SUR), and point cloud data (PCL) as specified in the FeatureType enumeration. For profile data, SizeY is set to 1.
Q: How do I handle vendor-specific extensions when sharing files?
A: Standard x3p readers will safely ignore unknown vendor extensions while reading all standard data. However, for maximum compatibility, consider whether the vendor extension data is essential and provide alternative representations when possible.
Q: What are the advantages of binary encoding over XML text storage?
A: Binary encoding significantly reduces file size (typically 5-10x smaller) and improves read/write performance. XML text storage offers human readability for debugging but is impractical for large areal datasets.

Leave a Reply

Your email address will not be published. Required fields are marked *