Generalized Markup Language (GML) is a set of macros that implement intent-based (procedural) markup tags for the IBM text formatter, SCRIPT. SCRIPT/VS is the main component of IBM's Document Composition Facility (DCF). A starter set of tags in GML is provided with the DCF product.

Characteristics

GML was developed in 1969 and the early 1970s by Charles Goldfarb, Edward Mosher and Raymond Lorie (whose surname initials were used by Goldfarb to make up the term GML).

Using GML, a document is marked up with tags that define what the text is, in terms of paragraphs, headers, lists, tables, and so forth. The document can then be automatically formatted for various devices. For example, it is possible to format a document for a laser printer or a line (dot matrix) printer or for a screen by specifying a profile for the device, without changing the document itself.

The Standard Generalized Markup Language (SGML), an ISO-standard technology for defining generalized markup languages for documents, is descended from GML. In 1986, he developed a PC version of ISIL called DWISIL. These products were used only internally at IBM.

IBM uses GML as description language on IBM i and predecessors for objects called "panel groups". Panel groups can present just formatted help text to the user when pressing the help key (often F1), resemble the typical IBM i menus with embedded help texts, or complete application displays with input/output fields, and other TUI elements being formatted on screen according to IBM CUA Standards. The overall facility is called User Interface Manager (UIM) and documented in Application Display Programming.

See also

  • HyperText Markup Language
  • Standard Generalized Markup Language
  • XML
  • SCRIPT (markup)
  • Information Presentation Facility - a descendant of GML, used by IBM to write OS/2's electronic books and online help.

References

  • Document Composition Facility Generalized Markup Language Implementation Guide (SH35.0050-2)
  • GML Starter Set Tag Reference
  • Application Display Programming (SC41-5715)