Kimler Sidebar Menu

Kimler Adventure Pages: Journal Entries

random top 40

KISS my <Acronym>

Filed in:XHTML

KISS my <Acronym>

March 25th, 2005  · stk

Nothing strikes up a better debate than abused rules, poor support and general confusion. The use of the <abbr> and <acronym> tags are a case in point.

Normally, I'm not a big fan of rules, per se, but because I'm learning XHTML, have been making the effort to be 'semantically correct'. Before today, however, I had not used either of these two tags, though have been aware of their existence. I began an exploration this morning, which led down a convoluted path and yielded a most confusing result.

First, there seems to be a general misunderstanding about the difference between an abbreviation and an acronym. After searching dictionaries, web discussions & a variety of other sources, definitions for both are below. If the World Wide Web Consortium (W3C) wanted to identify acronyms as a special abbreviation, they missed the boat by not doing the same for initialisms, with their own tag. (e.g., HTML is not an acronym, but rather, an initialism). Paraphrased from dictionary.com :

 

  • Abbreviation: A shortened form of a word or phrase used to represent the complete form (e.g., Mass. for Massachusetts, or Dr. for Doctor.)
  • Acronym: An abbreviation forms a word, using the initial letters of a name (e.g., WAC for Women's Army Corps) or parts of a series of words (e.g. radar for radio detecting and ranging).
  • Initialism: An abbreviation using the first letter (or letters) of a word in a phrase (e.g., IRS), syllables or components of a word (e.g., TNT) or a combination of words and syllables (e.g., ESP). Initialisms are pronounced by spelling out the letters one-by-one.

Many folks confuse initialisms and abbreviations as acronyms, improperly coding CIA using <acronym>, rather than an <abbr>. This confusion yields many semantically incorrect <acronym> tags. (An easy rule-of-thumb: If you can pronounce the abbreviation as a word, use <acronym> (which is, itself, a word), everything else is just an <abbr>).

As if this confusion weren't enough, MSIE doesn't currently provide support for the "title" attribute of the <abbr> tag. (MSIE won't yield a mouseover tooltip definition of the abbreviation, nor is the abbreviation pre-formatted with a dotted underline, like the <acronym> tag). This has driven many folks to seek work-a-rounds, in an effort to provide this information to their readers. Some solutions are are semantically correct, some are not. Regardless, this yields an inconsistent application of these tags.

The issue is befuddled further, by general disagreement regarding HOW the tags should be formatted. Not all browsers are like the one you are probably using. Some are aural, meaning that they convert typed text into the spoken words. For such browsers, correctly defining an abbreviation from an acronym becomes more important. Further, to make things easy on the reader, some argue that EVERY acronym and abbreviation occurrence should be tagged. These different applications are again inconsistent and may present authored, inline-formatting that conflicts with the desires of the user.

Even if tags were used correctly, consistently applied, and laboriously tagged for each and every occurrence (in other words, even IF hell were to freeze) reliance on a mouseover tooltip does nothing for readers whose browsers do not interpret these tags. Therefore, some would argue that a text definition is still required.

With so much confusion on the definition, the usage and the formatting, what's a fledgling web-site author to do?

Requesting universal understanding, acceptance and usage from every web author is ridiculous. A collective consensus will likely not arise from the befuddled masses. This issue aside, coding every acronym and abbreviation is substantially more time consuming than typing the full text. It conflicts with the very purpose of using abbreviations - brevity! I'm all for making things easy for the reader, but there's a limit to my generosity. C'mon, do I really need an <abbr> tag for USA? There must be a better way...

A Solution

How about a method that's easy on BOTH the reader and the writer? One that provides a more consistent usage of these tags? One based on the 'Keep it simple, stupid' (KISS) principle?

Consider: Acronym/abbreviation-aware browsers that use plug-in lists, including optional, user-defined lists.

Easy on the WRITER: They use abbreviations and acronyms on a well-established 'first-use' basis, with or without tags, but they include a print definition. Subsequent occurrences do not use any tags, which allows the writer to use abbreviations and acronyms as they are intended.

1st abbreviation: The Central Intelligence Agency (<abbr title="Central Intelligence Agency">CIA</abbr>)...

1st acronym: The Federal Emergency Management Agency (<acronym title="Federal Emergency Management Agency">FEMA</acronym>) responded...

If the writer chooses to use the tags, as in the above examples, then the abbr/acronym-aware browser picks up the information in the title attribute and applies it to ALL subsequent occurrences of that abbr/acronym (overriding those in any lists, including (or excepting) the user-defined list, based on user-defined preferences).

If the writer doesn't use any tags, then the abbr/acronym-aware browser falls back to the abbr/acronym plug-in lists. If there is a match, then a replacement is made, according to user-defined preferences. (Such a web author runs the risk of abbr/acronym misinterpreted, which is their incentive to utilize the tags).

Easy on the READER: THEY decide how the formatting should be accomplished, by setting rules. These rules might allow for first-use formatting only, or apply tooltips for EVERY occurrence - it's their choice. They might want a acronyms to be bold, red, with a dotted underline and tooltip definition. They might prefer abbreviations to be purple, with the definition as text, contained within parentheses, in all subsequent occurrences. Either way you slice it, they obtain a consistent presentation, as they surf from website to website, that suits their own needs.

Conformity: Abbr/Acronym plug-in lists would be made by crawling pages, seeking <abbr> & <acronym> tags with the "title" attribute definitions. Target lists could be categorized, perhaps based on profession (a geology list, dental list, etc.) or other criteria (a governmental list, U.S. geography, etc.) Common-usage lists would be preloaded into browsers, but users could plug-in additional lists, or construct user-defined lists. Anyone could generate lists and lists could be edited, much like a custom dictionary. Corrective rules for abbreviations, commonly mis-tagged as acronyms (such as HTML), could be fixed on the fly, much the way document spell-checkers work. This would allow greater consistency and conformity in tag usage.

Additional Benefits: Why not have a U.S. ZipCode list that associates a ZipCode (which is a numerical abbreviation for a geographical location) with state/town/city name? Or a telephone number list that associates telephone numbers (a numerical abbreviation for personally contacting someone) with business names, street addresses or other geographic information (information determined by web authors, filtered, of course, for ubiquitous profanity and advertising)?

I offer this proposal to the W3C, Web Standards Project (WaSP) and web users. I invite your comments.

Additional resources:

(Permalink)
Views: 9709 views
3 Comments · GuestBook
default pin-it button
Updated: 29-Nov-2010
Web View Count: 9709 viewsLast Web Update: 29-Nov-2010

Your Two Sense:

XHTML tags allowed. URLs & such will be converted to links.


Subscribe to Comments

Auto convert line breaks to <br />

1.flag Craig Saila Comment
03/28/05
Great ideas and thanks for your comments. Both could be done right now
-- with extensions and plug-ins to browsers -- and I'd love to see
something like that happen.

FYI, IE ignores more than just the title, it ignores the entire ABBR tag
thus preventing it from being styled in any way. You can, as I do with my site, use JavaScript to identify it.

Cheers,
Craig Saila
2.flag Ben Meadowcroft Comment
04/01/05
A nice article. I have to say I quite like the overall layout of your
site.
05/23/05

Personally, I think the controversy over abbr/acronym is one of the silliest things that web standards folk argue about, and we argue about some seriously silly stuff, so that's saying something.

The semantic difference between abbreviation and acronym is inconsequential, since there is no functional difference at all. ACRONYM and ABBR should be treated the same in almost every case. The only possible distinction would be in a screen-reader - it should read ACRONYMs and spell ABBRs. However, since most authors will frequently use abbreviations without the ABBR (when the meaning is assumed, or it has already been defined earlier in the document/knowledgebase), a screen reader must know certain ABBRs already, and will generally pronounce them when appropriate. For example, even if you wrap USA in <acronym title="United States of America">, if a screen reader says "yoosah", then that's a bug in the screen reader, not in the document.

Plus, M-W says that acronym means:

Acronym
a word (as NATO, radar, or snafu) formed from the initial letter or letters of each of the successive parts or major parts of a compound term; also : an abbreviation (as FBI) formed from initial letters

So, according to m-w, dictionary.com, and several others, HTML, FBI, and USA are in fact acronyms, as well as abbreviations.

Since MSIE doesn't touch ABBRs at all, and the difference is (for the most part) purely academic, what's the point in using ABBRs? Why not just use ACRONYM when it is an abbrevronym, and maybe use <span class="info" title="This is more info"> when that doesn't apply? You can easily style these spans with:

.info { border-bottom:1px dotted black }

and the TITLE attrib will cause browsers to add the tooltip, and the class adds semantic information: this span gives more INFOrmation about the contents.

Here's an info span.