MAMA: Markup report, part 2: Primary functional and structural markup
This time we will look at some of the basic document structural elements. These
are the elements that form the backbone of most documents. Some of the topics
mentioned this week carry so much detail (such as the child elements of the
HEAD element) that we can only give them brief lip
service here. For a deeper look at these areas and more, the following MAMA
article topics are also available this week:
Some of the topics involved with the
such as CSS (the
elements), and script (the
SCRIPT element) will receive
MUCH more attention in other articles coming soon.
To read more details of MAMA's findings, check out the MAMA home page.
The document layout concept for Web pages known as "frames" was first implemented
in Netscape 2.0 in 1995. It allows the browser window to be sub-divided into any
number of rows or columns of smaller windowed documents. The concept has many
yet, it is popular enough (and easy enough) that its usage has blossomed
over the years. Many authors and designers have a special place of fury in
their hearts for frames—a place where disdain for other reviled constructs
elements lives. The current version of frames enjoys wide deployment "in the wild",
despite its many drawbacks. Frames defiantly maintain a degree of authoring
inertia, despite the general disfavor.
Many authors probably do not care enough about the arguments against frames to use
other alternatives—or else they just are not being original enough in coming
up with design alternatives. Despite being dropped in XHTML 1.1, frames are not
going to go away any time soon.
Usage of Frame-related elements
The almost identical numbers of
FRAME element usage are an obvious result—neither
element does anything useful without the other. The
IFRAME elements, on the other hand, are not used
together very often—only 19,472 of the
(8.8%) use the two elements together. Although the
use numbers are lower than either the
FRAME totals, the total number is likely much higher—
many Web page ad systems are dynamically created by script using IFrames.
An interesting frame-related attribute:
Use of the
Target attribute is far, far greater than
the general usage of frames would indicate. It was detected in 2,077,198 of
MAMA's URLs, with
A element usage leading the way: 1,978,018 times—more than
3 times as much as the overall use of
IFRAME would indicate. Why is this? Authors are most
likely concerned with the frame situation the hyperlinks in their documents
will end up in, so they take steps to control it with the
Target attribute values
Target attribute can accept a wide variety of values,
but it also has several special reserved keywords, all beginning with the
underscore character ("_"): "_blank",
"_parent" and "_new".
Naturally, these values are the most popular. Values resembling these keywords
(such as "blank" or "new")
are also very common, as are those which stress the parent-child relationship
of frame documents to their content documents (including "main"
and "contents", and even German equivalents of the same:
"hauptframe" and "inhalt").
|Target attribute value||frequency||Target attribute value||frequency|
HEAD element and its children
HEAD is the most popular of any element used in MAMA's
URL set, found in 98.7% of MAMA's URLs. Its top 5 sub-elements are also in the
top 20 of ALL markup elements used. This overview will not spend
too much time on this topic. Many of these child elements participate in very
important Web page topics, such as CSS and scripting.
The META element is a popular way to assign and designate extra information
about the document. It accomplishes important authoring tasks that
are not possible in any other way, so its use is extremely very high. This usage
is rather evenly divided between two functional attributes:
There are a number of attributes that are nearly universal in scope and usage with HTML; they can be applied to most, if not all elements. The following sections examine some of these in more detail.
|Event handlers ("on*" attributes)||1,692,823|
These are two similar attributes that both assign unique identifiers to individual
elements. Of the two,
Name is encountered more often;
It is actually the most popular of all the common attributes (used in some form
on 91.8% of MAMA's URLs). The
Id attribute is the newer
method for uniquely labeling an element, while the
attribute has considerable historical traction with authors under a variety of
Id attribute values
There are extreme differences between the most popular values these two attributes
carry. The top values of the
Name attribute demonstrate
their ancestry of specific usage in the popular
and form elements. On the other hand, top values for the
attribute evidence a templating or classification behavior akin to the use of the
Class attribute. The most frequent
values show sequential unique labels for certain categories, for instance the images
in a typical document might all sport successive
(eg: "image1", "image2",
"image3"...). The full attribute value lists for
Id demonstrate these
behaviors more clearly than the shorter top 10 lists here are able to do.
This attribute offers a degree of categorization and classification not possible
with the inherent element semantics of a markup language. The
attribute allows multiple elements to share the same grouping, and a single element
instance can belong to multiple categories. The attribute sees its greatest expression
with CSS (which we will cover more later), but the category names themselves that
authors assign are interesting to examine.
Class attribute values
The most popular
Class value, "footer",
is twice as popular as its natural companion "header".
One big noticeable trend from the full
value list: there are a high number of class names of the form:
/style\d+/. The popularity of each class value
decreases as the integer value at the end increases. MAMA detected values like
this going at least up to "style117" and probably
higher. A high (but untested) correlation was noticed between class names of
this type and the use of Macromedia Dreamweaver scripting library functions.
As Macromedia Dreamweaver is not always the easiest editor to detect, this
correlation will remain a theory.
As mentioned previously, we will discuss scripting in greater detail soon. However, for now, we will take a look at those HTML markup portals to scripting, the event-handler attributes. Event handlers were detected in ~2/3 of the 2,617,305 MAMA URLs using script. MAMA found 52 unique event-handler attribute names occurring more than 4 times. With each event-handler attribute, there was generally a single element with which it showed the greatest affinity.
|Event handler||Element with
used with element
Now that we are starting to see the general shape that markup documents take,
we should pause to consider what to look at next. The full writeups for this
week offer our first real glimpses of what makes most documents tick (especially
the thorough treatment of a document's
structure and the use of common attributes). Looking ahead to
next week, our natural progression leads us to the elements that most authors use
BODY section of their documents: images
IMG) and hyperlinks (
Next week's overview will also start dipping into the bulk of the basic semantic
phrase and block markup. See you soon!
This article is licensed under a Creative Commons Attribution, Non Commercial - Share Alike 2.5 license.