In Defense of CGM

Subject: In Defense of CGM
From: Michael J Maloney <mmaloney -at- EPIC-ISTI -dot- COM>
Date: Fri, 11 Sep 1998 16:22:17 -0400

I'm compelled to respond to the explanation Tom Altmon provided to Patty
Meglio and this list regarding CGM. Tom, you couldn't have presented a more
misleading and inaccurate explanation of CGM if you tried. Your arguments
are based on an early version of CGM used in an environment only supporting
the most primitive capabilities. Your contention that CGM is a *rough
customer* and that it *isn't a standard* couldn't be further from the
truth. You will soon discover that CGM is the most stable, dependable and
utilized vector (and raster/vector) graphic file type in the technical
communication marketplace. You heard it here first.

Below is a history and explanation of CGM. The information below is
indisputable. In addition to the information below, there is a new CGM
standard perched to descend on the Web. It is preliminarily called WebCGM.
Point your search engines towards WC3 and CGM, or contact me directly for
more information. CGM is a rich, open standard format that can encapsulate
many kinds of graphic data including vector, raster, or a mixture of both.
The purpose of the CGM file is to provide a standard, unambiguous storage
and exchange format for device-independent 2D graphics.

CGM is defined as a standard in ISO 8632. The standard was first published
in 1987, updated in 1992, and has been amended several times since then.
Currently the standard recognizes four versions of CGM, all of which are
upwardly compatible. In addition, the standard allows for various CGM
Profiles that deal with practical implementation issues such as maximum
file size, number of points allowed for some types of objects, etc. CGM is
referenced by the ISO standard for SGML as the companion format for
graphics. Publishers of large volumes of structured documentation that
utilize many graphics are likely to use the combination of SGML for text
and CGM for graphics. CGM has been accepted by the U.S. Department of
Defense CALS initiative for delivery of 2D graphics and as a preferred
format for technical illustrations. CGM has also been adopted as a standard
format for the automotive industry in their standard SAE J2008. The
commercial air transport industry has profiled CGM in their standard, ATA
2100. The ATA standard has been adopted by the railroad industries
Electronic Parts Exchange Standard, EPES Version 1.0.
CGM Version 1 -This is essentially the original version of CGM defined in
the 1987 ISO standard. This version of CGM was criticized as being
insufficient for a number of reasons. One particularly unfortunate aspect
of CGM Version 1 is the small stock of graphic primitives, with no Bezier
or spline curves being defined at all. The result is that all curves (other
than circles or standard ellipses) in a CGM Version 1 file must be
represented with polylines. This limitation results in several major
disadvantages.

The worst problem with CGM Version 1 is the poor job most vendors have done
conforming to the standard. This situation is further aggravated by some
areas of previous ambiguity within the Version 1 standard. All of this
leads to frequent problems exchanging CGM Version 1 files.
CGM Version 2 - In 1990 a small expansion of the CGM standard was made
which corrected a number of defects in Version 1 and added segments and a
few other minor new features. These enhancements plus the elements of CGM
Version 1 have been referred to as CGM Version 2. Segments allow an element
to be defined once, with any subsequent occurrences of the element
referring to the original definition. Obviously, this improvement helps to
reduce the size of files. However, Version 2 did not address any of the
other shortcomings of Version 1 discussed above.
CGM Version 3 - The 1992 edition of the ISO standard added more than 40 new
elements. These elements, together with the previous elements, make up the
set of elements known as CGM Version 3. These new elements provide a major
increase in graphical expressive power over CGM Version 1 and Version 2
enabling CGM Version 3 to much more effectively store and exchange complex
2D graphics data. The most important capabilities added to CGM Version 3
include Bezier curves, conic arcs, and B-splines, Advanced font and text
support, Raster compression, Advanced area fills, and Additional color
models. The addition of these features enabled CGM Version 3 files to
overcome the problems with Version 1 and 2 files discussed above. CGM
Version 3 provided enough expressive power to fulfill the original vision
of the CGM mission.
CGM Version 4 - The 1995 Amendment 2 to ISO/IEC 8632:1992 added application
structures to CGM. This addition to CGM is now being referred to as CGM
Version 4. Application structures allow the inclusion of non-graphic
information in the file associated with various graphic elements. This
addition opens up a wide rage of possibilities including interactive
graphics, hot-spots, hyperlinking, etc.
CGM and the Graphics Applications Market - Following the initial
publication of the CGM standard in 1987, graphics software application
vendors moved quickly to support CGM. Many programs ranging from high-end
CAD systems to desktop drawing programs added some type of CGM
import/export capability. All of these efforts were based on CGM Version 1
and often failed to provide efficient and interchangeable CGM's.

The broad terms in which CGM is defined, the use of unpublished and
proprietary profiles, and some ambiguous wording in the original
specification resulted in a large amount of variation in CGM
implementations. The resulting proliferation of CGM file flavors hindered
the goal of easy transportability and interoperability. Further, due to the
limitations described above, customers found CGM Version 1 files of limited
use for technically demanding applications.
The result was a slow rate of adoption of CGM by customers and a
corresponding loss of interest in the format by most graphic software
vendors. Although the original CGM standard was published ten years ago and
CGM Version 3 was published five years ago, most graphics software vendors
continue to provide only a rudimentary CGM Version 1 capability. While many
vendors say they support CGM or have CGM import/export filters, these
statements by themselves are rather meaningless.

Questions to ask are: What version(s) of CGM are supported? Are all the
features implemented within each version for which support is claimed?
Which specific profiles are supported (CALS, ATA, J2008)?

The almost exclusive use today of raster formats such as TIFF and GIF for
electronic delivery of graphics will give way to a more appropriate use of
both raster and vector graphics. CGM is poised to play a leading role in
this transition. Add to this the power of CGM Version 4 application
structures for generating intelligent graphics with *built-in* hot spots
and interactivity and the argument for CGM becomes even stronger.

Michael J. Maloney
President, ISTI (International Society for Technical Illustrators)
1-803-366-0346

From ??? -at- ??? Sun Jan 00 00:00:00 0000=




Previous by Author: MS Word and cross-platform printing
Next by Author: My Coping Strategy
Previous by Thread: Re: What we REALLY do (Re: Technical Review Guidelines)
Next by Thread: test message garbage


What this post helpful? Share it with friends and colleagues:


Sponsored Ads