Forum Moderators: open
Several sites state that they use XHTML Transitional or Strict and "structured semantic markup". I've been trying to find out exactly what is meant by "structured semantic markup" but it seems to be one of those rather vague terms that people use and I can't find a definition.
It sounds like a great phrase for impressing clients :-) and I'd love to use it but how can I tell if my code is "structured semantic markup"?
Thanks!
Regardless of whether you use XHTML or HTML as your DOCTYPE, I think it's pretty much a given that totally semantic and well-structured markup follows the Strict version of whatever DTD you choose. Any site using XHTML Transitional is thoroughly confused if you ask me.
As far as semantic markup, perhaps someone else will come along with a WikiPedia-esque answer, but I would tell you that it's basically a matter of using elements as they were meant to be used. If you need a large space between paragraphs, you don't add
<p>
<br>
<br>
<br>
<br>
</p>
You simply create the correct margin for the previous or next paragraph with CSS. This makes more sense to everyone- SE's, rendering engines(usually), screen readers, normal folk...
You use <table>s when you're presenting information that ought to be laid out in rows and columns... you don't use <table>s for a complex layout that has absolutely no use for rows and columns and the default behavior of the <table> element.
That kind of thing. The way I think of it is, the more well-structured and semantically correct a web site is, the easier it would be for a layman to sit down and read your source code and easily understand what your page is saying if the only help you gave him was defining what HTML tags mean.
BTW I use Strict wherever I can and only resort to Transitional when I want to do something like have a link open in a new window.
Thanks for the reference to the post on XHTML - looks like that's opened another can of worms for me!
Looking back over the discussions lately, I've noticed that people are starting to use "semantic markup" as though it were a synonym for "structural markup." Let's nip this one in the bud before the masses get a hold of it. [webhistory.org]
;)
HTML is a presentational-structure markup language, with a bunch of formatting markup stuck on. All its "semantics" (as in syntax) are for presentational structure and formatting. It is not a semantic markup language, because it lacks the ability to encode "semantics" (as in meaning).
For example, HTML can express the word "bridge" in a heading, a paragraph, a blockquote etc. It cannot express whether the word "bridge" is referring to a physical structure over a gap, a card game or a denture.
To use semantic markup requires the use of a semantic markup language like the W3C's RDF, which together with OWL is the foundation of the W3C's Semantic Web [w3.org].
So I would suggest the use of the term "structured semantic markup" is wrong, or at best redundant. The most appropriate phrase to use is "structural markup" or "structured markup", and this refers to using HTML to markup presentational structure without embedding any additional formatting instructions.