When Tim Berners-Lee created HTML in 1991, he probably had little idea that this technology for marking up scientific papers via a set of tags for his own global hypertext project, known as the World Wide Web, would within a matter of years become a battleground between the two giants of the software business of the mid-1990s. HTML was a simple derivation from the meta-language Standard Generalized Markup Language (SGML) that had been kicking around academic institutions for decades. Its purpose was to preserve the structure of the documents created with it. HTML depends on a protocol, HyperText Transfer Protocol (HTTP), to transmit the documents back and forth between the resource and the viewer (for example, the server and the client computer). These two technologies formed the foundation of the Web, and it became quickly obvious in the early 1990s that there needed to be some sort of policing of both specifications to ensure a common implementation of HTML and HTTP so that communications could be conducted worldwide.
In 1994, Tim founded the World Wide Web Consortium (W3C), a body that set out to oversee the technical evolution of the Web. It has three main aims:
To provide universal access, so that anybody can use it
To develop a software environment to allow users to make use of the Web
To guide the development of the Web, taking into consideration the legal, social, and commercial issues that are raised
Each new version of a specification of a web technology has to be carefully vetted by W3C before it can become a standard. The HTML and HTTP specifications are subject to this process, and each new set of updates to these specifications yields a new version of the standard. Each standard has to go through a working draft, a candidate recommendation, and a proposed recommendation stage before it can be considered a fully operational standard. At each stage of the process, members of the W3C consortium vote on which amendments to make, or even whether to cancel the standard completely and send it back to square one.
When Microsoft entered the fray, they were playing catch up for the first two iterations of their Internet Explorer browser. However, with Internet Explorer 3 in 1996, they established a roughly equal set of features to compete with Netscape and so were able to add their own browser-specific tags. Very quickly, the Web polarized between these two browsers, but the problem was that pages viewable on one browser quite often wouldn't appear on another. One problem was that Microsoft had used its much stronger position in the market to give away its browser for free, while Netscape still needed to sell its own browser because it couldn't afford to freely distribute its flagship product. To maintain a competitive position, Netscape needed to offer new features to make the user want to purchase its browser rather than use the free Microsoft browser.
Things came to a head with both companies' version 4 browsers, which introduced dynamic page functionality. Unfortunately, Netscape did this by the means of a <layer> tag, while Microsoft chose to implement it via scripting language properties and methods. The W3C needed to take a firm hand here, because one of their three principal aims had been compromised: that of universal access. How could we guarantee this aim if we needed a specific vendor's browser to view a particular set of pages? They decided on a solution that used existing standard HTML tags and Cascading Style Sheets, both of which had been adopted as part of Microsoft's solution. As a result, Microsoft gained a dominant position in the browser war. It hasn't relinquished this position; the Netscape Navigator browser hadn't undergone a significant upgrade until only very recently, when Netscape 6 was released. Current usage statistics hover between 70 versus 30 percent and 90 versus 10 percent in Microsoft's favor, depending on which browser statistics sites we visit.
With a relatively stable version of the HTML standard in place with version 4.01, boasting a set of features that will take a long time for any browser manufacturer to implement completely, attention was turned to other areas of the Web. A new set of standards was introduced in the late 1990s governing the methods of presentation (style sheets) and the representation of the HTML document in script (the Document Object Model or DOM). Other standards emerged, such as Extensible Markup Language (XML), which offers a common format for representing data in a way that preserves its structure. We'll take a look now at the main standards that have been created, and say a bit about what each of the technologies does.