FYI: User-defined logical emphasis styles

The question of how to let users add their own tags to HTML
comes up periodically.  Wayne Wohler (one of the designers
of IBMIDDoc) recently posted a message to comp.text.sgml
describing one way to implement this in SGML.

With his permission, I'm forwarding it to www-html in hopes
that it will generate some new ideas.

(IMHO, HTML should start stealing more ideas from
well-designed applications like IBMIDDoc and InfoMaster,
and fewer from Microsoft RTF.)

--Begin Forwarded Message--
Date:          27 Oct 1994 15:14:22 GMT
From: (Wayne L. Wohler)
Organization:  IBM Information Development Strategy and Tools
Subject:       Emphasis markup methodology
Summary:       Description of a means of marking emphasis by intent
Keywords:      Emphasis markup
Newsgroups:    comp.text.sgml
Message-ID:    <>

The recent discussion of emphasis markup style using FOSIs motivated me
to share how IBMIDDoc supports the markup of emphasis.  While the following
description uses phrases as an example, it would also work for other
elements and indeed the markup supports the application of these ideas
to all elements.

What concerned us was the idea that while we can easily support the
markup of material that needed emphasis for one reason or another, in
most cases this markup did not capture why material needed to be
emphasized.  In our older markup system (BookMaster), the abstract nature
of emphasis was capture by the idea that emphasis was numbered
(hp1-hp9) where you needed to establish a convention for use of
different element types.  Unfortunately, in practice, people quickly
became familiar with the default style effect of each and used it in that

In IBMIDDoc, Eliot and I (mostly Eliot in this case) came up with a
classing scheme that allows the user to indicate intent easily.  This is
done by defining CLASSES of element.  These classes define a class of
element, what element(s) the class may apply to, what style may be
associated with the element/class combination.  The content of the
definition explains what the class means so that you have more
information about the class than simply the title or name.  Here is
a class for 'slang'.

 <ClassDef ClassName='Slang'
  <Semantic>Identifies all terms which while generally understood, at
least in the community reading this document, is not a formally correct
or &otq;proper&ctq; usage of the language.

I a document sample I recently marked up I defined the following other
classes for phrases as well:


Notice that there is one called emphasis still, which is reserved for
words I would expect to hear with emphasis and for which no other class

To use a class, we defined a common attribute (called CLASS) which
refers by name to the class definition:

  Administrative tasks (sometimes referred to as
  <ph clas=slang/administrivia/) are often handled through other

As you can see, it doesn't require much more effort than marking
emphasis in more traditional ways.  It does require a knowledge of the
different classes that an element may take and a willingness (in the
case of emphasis) to figure out why you want to emphasize the material.
I have found that that isn't as easy as it may appear.

Why bother?  One application I think that may be useful, if this approach
were used consistantly (a big if, admittedly) is that it would flag
certain phrases for human language translators (people, but maybe
programs too) that a term or phrase needs special treatment.  This in
addition to the obvious application of changing the presentation style
for different classes of phrase.

Comments or suggestions?

Wayne L. Wohler                   Internet:
Dept EBR/025Z                     IBMMAIL:   USIB29WX@IBMMAIL
Information Development Strategy and Tools   Phone: 1-303-924-5943
IBM Corporation
PO Box 1900
Boulder, Colorado  80301-9191

Disclaimer: This posting represents the poster's views, not those of IBM

--End Forwarded Message--

Received on Monday, 31 October 1994 18:12:40 UTC