Well-formed element

From Wikipedia, the free encyclopedia

In web page design, and generally for all markup languages such as SGML, HTML, and XML, a well-formed element is one that is either:

  • opened and subsequently closed,
  • an empty element, which in that case must be terminated,
  • properly nested so that it does not overlap.

For example, in HTML: <b>word</b> is a well-formed element, while <i><b>word</i> is not, since the bold element is not closed. In XHTML, empty elements (elements that inherently have no content) should be closed by putting a slash at the end of the opening tag, e.g. <img />, <br />, <hr />, etc. In HTML, there is no closing tag for such elements, and no slash is added to the opening tag.

Furthermore, if an element has any attributes, each attribute value must be properly quoted.

In a well-formed document,

  • all elements are well-formed, and
  • a single element, known as the root element, contains all of the other elements in the document.

For example, the code below is not well-formed HTML, because the em and strong elements overlap:

<!-- WRONG! NOT WELL-FORMED HTML! -->
<p>Normal <em>emphasized <strong>strong emphasized</em> strong</strong></p>
 
<!-- Correct: Well-formed HTML. -->
<p>Normal <em>emphasized <strong>strong emphasized</strong></em> <strong>strong</strong></p>
<p>Alternatively <em>emphasized</em> <strong><em>strong emphasized</em> strong</strong></p>