Acronyms Explained: HTML, XML, XHTML, PHP, ASP and more!

HTML

Hyper Text Mark-up Language is the basis for the web as we know it. HTML is actually a subset of a much larger language, SGML, Standardized General Mark-up Language. SGML is, philosophically speaking, an idea which HTML puts into practice. HTML is limited, but easy for most people to work with. HTML employs a tag-based syntax for marking up text, controlling its appearance within a web browser.

For instance, here's the opening to The Tempest, by Shakespeare (I didn't need to write that, did I?), as plain text:

The Tempest  
  
Text placed in the public domain by Moby Lexical Tools, 1992.  
SGML markup by Jon Bosak, 1992-1994.  
XML version by Jon Bosak, 1996-1998.  
This work may be freely copied and distributed worldwide.  
  
Dramatis Personae  
ALONSO, King of Naples.  
SEBASTIAN, his brother.  
PROSPERO, the right Duke of Milan.  
ANTONIO, his brother, the usurping Duke of Milan.  
FERDINAND, son to the King of Naples.  
GONZALO, an honest old Counsellor.  
  
ADRIAN  
FRANCISCO  
Lords.  
  
CALIBAN, a savage and deformed Slave.  
TRINCULO, a Jester.  
STEPHANO, a drunken Butler.  
Master of a Ship.   
Boatswain.   
Mariners.   
MIRANDA, daughter to Prospero.  
ARIEL, an airy Spirit.  
  
IRIS  
CERES  
JUNO  
Nymphs  
Reapers  
Presented by Spirits.  
  
Other Spirits attending on Prospero.  
SCENE  A ship at Sea: an island.  
  
THE TEMPEST  
  
ACT I  
  
SCENE I.  On a ship at sea: a tempestuous noise of thunder and lightning heard.  
  
Enter a Master and a Boatswain  
  
Master  
Boatswain!  
  
Boatswain  
Here, master: what cheer?  
  
Master  
Good, speak to the mariners: fall to't, yarely,  
or we run ourselves aground: bestir, bestir.  
  
Exit  
Enter Mariners  
  
Boatswain  
Heigh, my hearts! cheerly, cheerly, my hearts!  
yare, yare! Take in the topsail. Tend to the  
master's whistle. Blow, till thou burst thy wind,  
if room enough!  
  
Enter ALONSO, SEBASTIAN, ANTONIO, FERDINAND,  
GONZALO, and others  
  
ALONSO  
Good boatswain, have care. Where's the master?  
Play the men.  
  
Boatswain  
I pray now, keep below.  
  
ANTONIO  
Where is the master, boatswain?  
  
Boatswain  
Do you not hear him? You mar our labour: keep your  
cabins: you do assist the storm.

Rendered as HTML, it might look like this:

<h1>The Tempest</h1>  
  
<p>  
Text placed in the public domain by Moby Lexical Tools, 1992.<br>  
SGML markup by Jon Bosak, 1992-1994.<br>  
XML version by Jon Bosak, 1996-1998.<br>  
This work may be freely copied and distributed worldwide.  
</p>  
  
<h2>Dramatis Personae</h2>  
<p>  
ALONSO, King of Naples.<br>  
SEBASTIAN, his brother.<br>  
PROSPERO, the right Duke of Milan.<br>  
ANTONIO, his brother, the usurping Duke of Milan.<br>  
FERDINAND, son to the King of Naples.<br>  
GONZALO, an honest old Counsellor.  
</p>  
  
<p>  
ADRIAN<br>  
FRANCISCO<br>  
<i>Lords.</i>  
</p>  
  
<p>  
CALIBAN, a savage and deformed Slave.<br>  
TRINCULO, a Jester.<br>  
STEPHANO, a drunken Butler.<br>  
Master of a Ship. <br>  
Boatswain. <br>  
Mariners. <br>  
MIRANDA, daughter to Prospero.<br>  
ARIEL, an airy Spirit.  
</p>  
  
<p>  
IRIS<br>  
CERES<br>  
JUNO<br>  
Nymphs<br>  
Reapers<br>  
<i>presented by Spirits.</i>  
</p>  
  
<p>  
Other Spirits attending on Prospero.</p>  
  
<p>  
<i>SCENE</i>  A ship at Sea: an island.  
</p>  
  
<h3>THE TEMPEST</h3>  
  
<h4>ACT I</h4>  
  
<h5>SCENE I.</h5>  
  
<p>  
<i>On a ship at sea: a tempestuous noise of thunder and lightning heard.</i>  
</p>  
  
<p>  
<i>Enter a Master and a Boatswain</i>  
</p>  
  
<p>  
<b>Master</b><br>  
Boatswain!  
</p>  
  
<p>  
<b>Boatswain</b><br>  
Here, master: what cheer?</p>  
  
<p>  
<b>Master</b><br>  
Good, speak to the mariners: fall to't, yarely,<br>  
or we run ourselves aground: bestir, bestir.  
</p>  
  
<p>  
<i>Exit<br>  
Enter Mariners</i>  
</p>  
  
<p>  
<b>Boatswain</b><br>  
Heigh, my hearts! cheerly, cheerly, my hearts!<br>  
yare, yare! Take in the topsail. Tend to the<br>  
master's whistle. Blow, till thou burst thy wind,<br>  
if room enough!  
</p>  
  
<p>  
<i>Enter ALONSO, SEBASTIAN, ANTONIO, FERDINAND,<br>  
GONZALO, and others</i>  
</p>  
  
<p>  
<b>ALONSO</b><br>  
Good boatswain, have care. Where's the master?<br>  
Play the men.  
</p>  
  
<p>  
<b>Boatswain</b><br>  
I pray now, keep below.  
</p>  
  
<p>  
<b>ANTONIO</b><br>  
Where is the master, boatswain?  
</p>  
  
<p>  
<b>Boatswain</b><br>  
Do you not hear him? You mar our labour: keep your<br>  
cabins: you do assist the storm.  
</p>

And, rendered, it looks like this.

The great advantage to HTML, of course, is that you can control what things are going to look like: the above is slightly formatted, but you could use CSS to pretty it up quite a bit. The downside is that even with use of CSS, there's no way to understand what the text actually is: the word "ALONSO", for example, is used in the cast of characters, in stage directions, and as a speaker's cue. The word could also be part of speech, as when another character speaks to him or refers to him.

It might not seem like much for Shakespeare, but imagine that you had a large-scale catalogue online, and the number "2001": is that a year, or a price, or a unit measurement, or a SKU? Wouldn't it be great if you could tell what kind of data it was, so you could search or sort data just based on price, or year, or units?