Addressing the current status of displaying CGM on modern web browsers

Dec 6, 2021

With its metadata-rich structure containing vector graphics, raster graphics, and text, CGM is the preferred 2D graphic format for many international standards including the S1000D and ATA. This particular format is utilized heavily in aviation, engineering, defense, and various other applications requiring highly interoperable technical illustration data with long-life cycles. 

However, as opposed to a common raster image format such as JPG or PNG, CGM is not HTML5 compliant and cannot be natively displayed in a modern web browser. This is due to the fact this 2D standard was already in existence preceding the birth of the world wide web and is not commonly used by the average user, thus the lack of real incentives to develop CGM-compliant browsers. Therefore, to answer the need for web-based CGM exhibitions, most organizations have turned to the two W3C standards for scalable 2d graphics – WebCGM and SVG (Scalable Vector Graphics). 

Created in a joint effort between CGM Open and WC3, WebCGM is a profile of CGM suitable for technical graphics with long life cycles and high requirements for data interoperability. It defines a subset of the entire CGM standard that makes it compatible with web display, as well as instructing which features of CGM are to be used to guarantee interoperability. For this reason, it was adopted by the S1000D standard as the recommended 2D graphic format. 

While WebCGM has always been the predominant approach to displaying web-compatible CGM data, there has been significant growth in SVG (Scalable Vector Graphics) applications in the aerospace/defense industry over the past few years. Originally developed for general, high-quality graphic arts, SVG is fully HTML5 compatible, and this metafile format can be displayed natively on any modern web browser. 

Even though SVG was not purposely designed for data exchange nor officially recommended by the S1000D standard, with the JavaScript enhancement source CGM can now be converted to SVG and vice versa, faithfully preserving all the metadata, hotspots, and other functionalities similar to a WebCGM tool. Because SVG is newer and more widely web-supported, it is also more flexible regarding what attributes can be added other than metadata (e.g animations with CSS tweaks), and capable of adapting to various hosting environment requirements. There have also been positive results with the continuing optimization of the SVG format for better data interoperability.

To answer which format is better is not easy. While it is unarguable that using the CGM is more “stable” under the guidelines of the S1000D requirement, CGM still falls short of being fully compatible with the web and had to rely on external web plugins with an uncertain future or ones that have already been deprecated such as NPAPI. This is fortunately not the case for SVG. This web-compatible format when properly refined with JS can be viewed as if it was a true CGM with native browser support.

Having said that, both approaches can be considered optimal as they have both found extensive usage in real-world applications. It is important to understand that at the moment, SVG should only be utilized for high-fidelity HTML5 display and not as a replacement for CGM. In fact, the source CGM file should still remain as the original file to be used interchangeably with SVG. In order to truly benefit from the native, seamless web experience of SVG, it is critical to employ a robust CGM – SVG conversion tool enhanced with the capabilities to retain the full functionality (IDP, hotpots, etc), data integrity, and other interoperability requirements of the source CGM when building viewable IETM / IETP content. 

About SYNAXIOM

SYNAXIOM is a leading expert in developing robust, extensible, and cost-effective enterprise solutions including NIVOMAX – the single suite for S1000D / ATA compliant IETM & IETP