Pen-Based Computing The Journal of Stylus Systems

Standard Data Format for Ink Proposed

Volume 3, Number 3 · June 1993 · Pages 1, 2

From the Original Pages

Click a page to enlarge · Alt-click to open the full issue

Slate takes the lead, industry consortium falls into line

One of the first questions we asked when pen-based operating environments began appearing two or three years ago was: “who will take care of specifying data formats for ink?” Invariably, the response was MS-DOS-inspired — operating system vendors said application developers should attend to it, application vendors thought ink data formats ought to be the responsibility of the operating system.

These responses weren’t totally unexpected. With MS-DOS, if you recall, data file formats are generally left to application developers; that’s why we have a plethora of formats for word processors, spreadsheets, databases, and the like, none of which are generally compatible with each other. Certainly the history of the PC industry might be told differently if the dominant operating system had autocratically defined data file formats.

Jot Solves Data Chaos

Clearly, if mobile pen-based computers are to realize their promise, the data format Tower of Babel that’s plagued PC users must be avoided. Acknowledging this, a consortium of operating system and application vendors have banded together to define an agreed upon specification for ink storage and interchange of electronic ink data. The specification, called “Jot,” provides an extensible platform- and application-independent format for electronic ink so that users can exchange ink data between applications and environments. Still, the goal of the format is limited to the representation of electronic ink data embedded in some other electronic document, not to larger documents such as email or enhanced word-processing data files. The specification is an external format for electronic ink data interchange, and does not assume or dictate how the application internally deals with ink data.

Jot Has Industry Support

Following Slate Corp’s lead, companies that contributed to the Jot specification are General Magic, Apple, GO, Lotus, and Microsoft, all of which intend to support the format in their software. Other companies that have announced support for Jot 1.0 include CIC, Aha! Software, Axia, Consortech, Delrina, EO, GeoWorks, Ink Development, Intuit, LCS/Telegraphics, Lexicus, Notable, Palm, PenMagic, PenPal, and Pensee. Putting its money where its mouth is, Slate announced that it is already shipping DLLs that convert the proprietary ink data format of its PenApp Application Builder to and from Jot 1.0 standard format.

Although Slate holds the copyright, the specification contains language allowing developers to incorporate and use any portion of the specification without hindrance. The specification is written principally in C language constructs, although it can be implemented in any language.

The Jot Ink Format

Jot treats ink data in a broad way in that ink can include information about the pen tip used, the color of the ink, the sampling rate of the digitizer, the angles used to write, and so forth, as opposed to simply the x/y coordinates of the ink that was drawn.

The format is not designed to easily support lots of in-memory manipulation of the ink data, such as deleting strokes, changing line widths, and so on. All the information needed to perform these manipulations is present in Jot, so an application might augment this format to facilitate manipulation of the ink data. In practice, the format will probably not be the same as the internal format used by an application, except where that application does not support ink editing or transformation and is only storing ink data as part of a larger whole (e.g., an email program).

The Jot Specification

The specification is record-based — each piece of information is stored in a record structure which contains enough self-describing information that an application unfamiliar or unconcerned with a particular record can easily skip it.

Jot captures user input for the electronic ink, including not just x/y coordinates, but also some selection of current drawing nib and ink color. This differs from other possible approaches, such as those based on certain recognition models for handwritten text, which require decomposing the handwritten ink data first into a set of pre-defined approximation curves or substrokes, and then storing a list of encodings of these substrokes.

The Jot storage format has a number of properties:

  • Simple. Simple operations on the ink data read stroke coordinates and bounding information from the data. Complex information — stylus pressure, direction, etc. — is optional.
  • Compact. Jot is intended to be as compact as possible without sacrificing simplicity or fidelity. Optional information such as timestamps or color specifications occupy space only when they are present.
  • Compression. The stroke information that describes the ink can optionally be represented in a compressed format.
  • Expandable and Compatible. Jot is expandable: as developers discover new information that should be recorded in an ink storage format, these new features can be added without changing the behavior of existing application programs working with an older version of the format. In general, new features can generally be ignored by applications reading older versions of the format. Likewise, new application programs can handle previous versions of the format without special work.

Jot 1.0 provides for a wide variety of ink data properties, including:

  • Multiple strokes of ink combined into single objects
  • Bounds
  • Scale
  • Offset
  • Numbered groupings of strokes
  • Color, including opacity
  • Pen tips
  • Timing information
  • Height of the pen over the digitizer
  • Stylus tip force
  • Buttons on the stylus
  • X and Y angle of the stylus

Additionally, there are 47 reserved record types for future expansion.

Slate is to be commended for taking a much needed step towards establishing defacto standards. It’s taken years for defacto standards such as PCX, TIFF, and similar formats to emerge and be accepted in the PC arena. This has hindered progress in several areas. The approach of accepting industry-wide input and making the Jot specification publicly available is, in the end, much preferable than having a single entity dictate file formats from above. If the specification is threatened, it will be by a major operating system vendor, specifically Microsoft, which defines its own ink format specification, irrespective of industry-wide directions. The Redmond giant has done this before. However, by including Microsoft in the specification process, this threat should be cut off at the pass, although there’s certainly no guarantee.

For more information, contact:

Slate Corporation
15035 N. 73rd Street
Scottsdale, AZ 85260

Transcribed from Pen-Based Computing, Volume 3, Number 3 — June 1993. Pages 1, 2.