Skip the navigation

Quickstudy: Markup Languages

August 8, 2005 12:00 PM ET

Computerworld -

Listen to Computerworld's TechCast: Markup Languages. Podcast duration: 7 minutes.

In 1969, three IBM researchers created GML, a formatting language for document publishing. Understood to mean Generalized Markup Language, the letters also happened to be the initials of its creators: Charles Goldfarb, Edward Mosher and Raymond Lorie.

GML allowed text editing and formatting, and it enabled information-retrieval subsystems to share documents. Instead of a simple tagging scheme, however, GML introduced the concept of a formally defined document type containing an explicit hierarchy of structured elements.

Major portions of GML were implemented in mainframe publishing systems, and the language achieved substantial industry acceptance. IBM adopted GML and produces over 90% of its documents with it.

GML was expanded with additional concepts, such as short references, link processes and concurrent document types, into Standard Generalized Markup Language. SGML made inroads in the publishing world, especially at the U.S. Government Printing Office, and it became an international standard in 1986.

Still, SGML was largely unknown until 1990, when Tim Berners-Lee, inventor of the World Wide Web, created Hypertext Markup Language as a subset of SGML. Soon, every type of document and data was being littered with tags at the beginning and end of text elements like this: <:tag>and<:/tag>. Then Extensible Markup Language (XML) came along in the late 1990s, and the IT world hasn't been the same since.

In fact, it seems that hardly a day goes by without a new markup language being announced or described. Indeed, Computerworld has published separate QuickStudies on 10 markup languages, and that just scratches the surface. A Google search on "markup language" returns more than 6 million pages.

Thus we present this shorthand guide to current markup languages. It certainly doesn't cover them all, but it does give an idea of the flexibility and power of the concept and how it is being used. Most are simple extensions of XML or document type definitions specialized for a particular area of interest, but some are quite complex.

The Languages

Business Process Execution Language: BPEL is designed to run a series of Web-based transactions and/or characterize interfaces that are needed to complete Web-based transactions. It's used for modeling business processes, with specifications for transactions and compensating transactions, data flow, messages and scheduled events, business rules, security roles, and exceptions. QuickStudy: BPEL

Cell Markup Language: CellML stores and exchanges computer-based mathematical models, allowing scientists to share models even if they use different model-building software. It also enables them to reuse components from one model in another, thus accelerating model building. CellML includes mathematics and metadata by leveraging existing languages, including MathML.

Our Commenting Policies