Vector Markup Language (VML) Writer

The Vector Markup Language (VML) Format Writer module enables FME to be used in conjunction with the world wide web to translate vector data on-the-fly for display in web browsers. VML is an Extensible Markup Language (XML) based exchange, editing, and delivery format for vector graphics on the web. This section assumes familiarity with the VML format and the XML standard.


VML, which is written using the XML syntax, is a text-based markup language used for describing vector graphics that can be viewed and edited by a wide variety of tools. It provides for the description of lines, polygons, curves, images, and text objects. Positioning and layout of the vector graphics are accomplished by using the Cascading Style Sheets, Level 2 (CSS2) visual rendering model. For more information on VML, XML, CSS1, and CSS2 see the World Wide Web Consortium site at

The two primary objects that VML describes are the shape and group elements. The shape element is used to define a visible vector graphic element whereas the group element is used to group together several shapes so that they may be transformed together as one unit. These are top-level elements that may define their own local coordinate system. The shape and group coordinate spaces define a CSS2 block level box.

In addition, VML defines several auxiliary top-level elements to help make the editing and representation of graphical information more compact and convenient. These auxiliary elements are the shapetype element and the predefined shape elements line, polyline, curve, rect, roundrect, oval, arc and image. The usage of some of these VML elements currently supported by FME are explained in subsequent sections.

Writer Overview

The VML writer creates a single VML top-level group element that is used as the containing block for all feature data. This top-level group element defines the coordinate space for all of its sub-elements.

Advanced Users: The coordinate space for the top-level group element may be specified in a mapping file with the FME COORDSIZE and COORDORIGIN directives. These directives are described under the Writer Directives. All features are drawn relative to its containing block’s — the top-level group element — top left corner. The specified coordinate space has its positive x and y axis in the lower right quadrant.

The VML writer creates a single HyperText Markup Language (HTML) file with the VML data contained in the <body> region of the HTML. The only browser supporting VML is Internet Explorer 5 (IE5) and, as a result, the header of the HTML file produced contains information specific to this browser. This information is needed in the header to let other browsers know that the embedded VML data is to be handed off to the browser’s VML-specific processor.