One of my favorite things about Web development is it’s openness. I love it how open the principles, practices, and techniques behind it are continually open for discussion. One of my top priorities when applying markup to a document is keeping semantics in mind. (X)HTML is a semantic markup language by nature, and it should be treated as such, but semantics can be argued until the end of time in certain cases.
When first researching the specifications published by the W3C, there were certain times where a light went off, and one more piece seemed to fit together. Many times, it was when I would read about one of the many HTML elements and it would just make sense. As I became more and more involved with markup, it became apparent how great (X)HTML can be when used properly. From time to time I will review the specification, re-examine the details, and analyze how I’ve been using a particular tag in practice. Two such tags that I recently reviewed are the acronym
and abbr
tags.
Acronym or Abbreviation?
The acronym
and abbr
tags are not only a completely great tool for your readers, they also provide another way for you to include some search engine friendly keywords into your document. According to the W3C Spec, acronym
and abbr
are considered phrase elements. Phrase elements add structural information to text fragments
. More specifically:
- ABBR
- Indicates an abbreviated form (e.g., WWW, HTTP, URI, Mass., etc.).
- ACRONYM
- Indicates an acronym (e.g., WAC, radar, etc.).
The ABBR and ACRONYM elements allow authors to clearly indicate occurrences of abbreviations and acronyms. Western languages make extensive use of acronyms such as “GmbH”, “NATO”, and “F.B.I.”, as well as abbreviations like “M.”, “Inc.”, “et al.”, “etc.” … Marking up these constructs provides useful information to user agents and tools such as spell checkers, speech synthesizers, translation systems and search-engine indexers.
The first time I read the above definition, I was still a bit perplexed as to when each should be used. The specification goes on to say:
The content of the ABBR and ACRONYM elements specifies the abbreviated expression itself, as it would normally appear in running text. The title attribute of these elements may be used to provide the full or expanded form of the expression.
The definition has now grouped the two tags into one and made it a bit more confusing as to what criteria a string should meet before it is classified as either acronym
or abbr
.
Note that abbreviations and acronyms often have idiosyncratic pronunciations. For example, while “IRS” and “BBC” are typically pronounced letter by letter, “NATO” and “UNESCO” are pronounced phonetically. Still other abbreviated forms (e.g., “URI” and “SQL”) are spelled out by some people and pronounced as words by other people. When necessary, authors should use style sheets to specify the pronunciation of an abbreviated form.
What separates abbr
and acronym
From reading the documentation, we can gather that abbr
and acronym
are very similar in nature, but on the other hand, they’re different. The specification leaves this issue open for interpretation and many people have their own views.
I tend to side with those that decipher the difference in the actual pronunciation of the phrase. An acronym is a set of letters that can be pronounced as a single word (e.g., NATO pronounced “NAY-TOE”) whereas an abbreviation is pronounced one letter at a time (e.g., CSS pronounced “SEE ESS ESS”).
Is there a need for both acronym
and abbr
?
There are many people that feel that acronym
will be deprecated in future versions of XHTML. Personally, I don’t have a strong opinion on whether or not we’ll be able to use acronym
in the future, but given the gray nature of the definition itself, I wouldn’t rule out it’s deprecation.
Beyond the semantics of the tags themselves, there are, of course, browser inconsistencies to deal with as well. From a semantic point of view, browser support could be pushed aside in favor of semantic value. On the other hand, having stylistic control over abbreviated phrases or acronyms can be a strong benefit for the design and usability of a document.
Comments
Because of the browser inconsistencies you mentioned (aka IE not support abbr at all), many developers have used acronym incorrectly.
I think the key thing here is to remember that every acronym is an abbreviation, whereas this is not truth vice-versa.
There are different parties when it comes to defining what is an acronym, so this also causes conflict. For example, I was confused when someone started talking about sequel… then I realised they meant SQL. So, is SQL an acronym, because I personally do not pronounce the word! Remember it is always an abbreviation (shortening of a word or phrase).
There is also a second specific type of abbreviation: Initialism – which ‘are formed using the initial letters of words or word parts in a phrase or name’.
So, after a long conversation about acronym and abbr, (and I was in the ‘they are both useful camp) I came up with the following CSS (you can translate to HTML) which you might find useful.
abbr {
cursor: help;
}
@media aural {
abbr, abbr.initialism {
speak: spell-out;
}
abbr.acronym {
speak: normal;
}
}
i would take the discussion even further…although the specs are pretty open about the use of the two tags, you can argue the grammatical correctness of the use of each tag. while an abbreviation can be any shortened form of a word, an acronym is more specific: “A word typically made up of the first letters of two or more words.” so, in the examples given by the W3C (which in itself is an acronym), WWW, HTTP, and URI are acronyms, while Mass. and etc. are abbreviations.
@ Chris – this is where the argument comes in. Some respected linguistic societies state that acronyms must be pronounceable, others do not.
@trovster: I definitely agree that acronym has been abused due to lack of browser support in certain circumstances. I really like your ideas regarding acronyms being abbreviations but the reverse not being the case. The snippet you provided looks quite interesting and I plan on taking a closer look as soon as time provides – -thanks for the great comment.
@chris: You’re right, as is trovster with his reply; this is where the debate comes in. There are many people on both sides of the fence when it comes to classifying a string as an abbreviation or acronym. How do you guys feel about the possible deprecation of
acronym
?hadnt been over here in awhile. how about an rss feed for comments, jon?
anyway, in regards to the deprecation of acronym, i dont think we’d lose much as a result. we can all agree that any acronym must be an abbreviation; however, applying trovster rule that an acronym must be pronounceable, then screen readers may lose the ability to pronounce acronyms such as DOM or DOS, instead spelling them out. hmmm…on second thought, maybe deprecation isn’t such a good idea after all.
@chris: I’m sorry about that, there is actually a feed, there just isn’t much light shed on it. You can find it at:
https://jonchristopher.us/comments/feed
I’ll be sure to include some details as far as what feeds are offered on the site when I’m able to make the much needed updates to the About page.
I was on the fence about the deprecation but I feel that both have their uses, and both should be kept in the spec.
ah thanks for the link to the feed. i had just looked on this page and didnt find anything.
“every acronym is an abbreviation”
I’m going to have to disagree here. While technically this _may_ be true (depending upon the dictionary you read and your interpretation thereof), I don’t think it translates to common vernacular. When I read the W3C specification earlier in this post, in fact, I literally thought, “NO – that’s NOT an abbreviation – it’s an acronym.”
And therein lies the problem. If we’re shooting for semantics here, I don’t think we’re hitting the target by abolishing the ACRONYM element OR by marking up acronyms as ABBR elements. If I were to be this diligent about marking up my data, and was looking to markup “WWW”, I think I would sooner consider it SPAN-worthy than ABBR-worthy (particularly prior to this post). And in my mind, markup _should_ work that way. Less presentational markup (like spans and most divs), ideally, we would all take a document/page/whatever and mark it up identically (again, that’s the ideal and very often not the reality).
I guess the semantics question is answered by how many people are in the boat with me – if I’m alone in the way I would have (not) used ABBR, it’s no issue; if there’s a large contingent that thinks the same way, it may be a bigger one.
Either way, thanks for bringing it up – great discussion.
@Nathan Logan: It’s great to read such a well thought out comment. It seems as though you’ve got a good grasp on the semantic issue here. Your idea about everyone ideally using identical markup is spot on, but as we all know, far from the truth.
Personally, I use both
abbr
andacronym
in almost every one of my projects. I can see the semantic difference between the two, and although it’s minor, it could make a big difference in the way an abbreviation or acronym is dictated to someone using a screen reader.Again, thanks for the well thought out comment – I hope to read more of your reactions in the future.
Thank you so much,for your great help.I’m an Iranian university translation student and I was really confused with this two abbr. and acronym.your information really helped me.
[…] Abbreviation or Acronym Whats the Difference Posted in Uncategorized. Tags: HTML. No Comments » […]
[…] was probably a good time to clear it up once and for all! It wasn’t hard to find a multitude of blog posts and forum threads on the topic. Most of them start by looking at the W3C […]