0 evaluări0% au considerat acest document util (0 voturi)
208 vizualizări44 pagini
- Tim Berners-Lee invented the World Wide Web in 1989 while working at CERN, creating HTML as the publishing language for linking documents.
- HTML grew out of SGML and was designed to be simple and accessible across different computers and browsers. It allowed for hyperlinks between documents using tags like <A>.
- By the early 1990s, developments in technology like the rise of hypertext, more internet users, and the domain name system created conditions ripe for the Web to take off. Berners-Lee shared HTML openly to encourage others to build upon the idea.
- Tim Berners-Lee invented the World Wide Web in 1989 while working at CERN, creating HTML as the publishing language for linking documents.
- HTML grew out of SGML and was designed to be simple and accessible across different computers and browsers. It allowed for hyperlinks between documents using tags like <A>.
- By the early 1990s, developments in technology like the rise of hypertext, more internet users, and the domain name system created conditions ripe for the Web to take off. Berners-Lee shared HTML openly to encourage others to build upon the idea.
Drepturi de autor:
Attribution Non-Commercial (BY-NC)
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
- Tim Berners-Lee invented the World Wide Web in 1989 while working at CERN, creating HTML as the publishing language for linking documents.
- HTML grew out of SGML and was designed to be simple and accessible across different computers and browsers. It allowed for hyperlinks between documents using tags like <A>.
- By the early 1990s, developments in technology like the rise of hypertext, more internet users, and the domain name system created conditions ripe for the Web to take off. Berners-Lee shared HTML openly to encourage others to build upon the idea.
Drepturi de autor:
Attribution Non-Commercial (BY-NC)
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
O How the World Wide Web began O %he events and circumstances that led to the World Wide Web's current popularity O How H% has grown Irom its conception in the early 1990s $ummary H% has had a liIe-span oI roughly seven years. During that time, it has evolved Irom a simple language with a small number oI tags to a complex system oI mark-up, enabling authors to create all-singing-and-dancing Web pages complete with animated images, sound and all manner oI gimmicks. %his chapter tells you something about the Web's early days, H%, and about the people, companies and organizations who contributed to H%, H% 2, H% 3.2 and Iinally, H% 4. %his chapter is a short history oI H%. Its aim is to give readers some idea oI how the H% we use today was developed Irom the prototype written by %im Berners- ee in 1992. %he story is interesting - not least because H% has been through an extremely bumpy ride on the road to standardization, with soItware engineers, academics and browser companies haggling about the language like so many inisters oI Parliament debating in the House oI Commons. 1989: Tim Berners-Lee invents the Web with HTML as its publishing language %he World Wide Web began liIe in the place where you would least expect it: at CERN, the European aboratory Ior Particle Physics in Geneva, Switzerland. CERN is a meeting place Ior physicists Irom all over the world, where highly abstract and conceptual thinkers engage in the contemplation oI complex atomic phenomena that occur on a minuscule scale in time and space. %his is a surprising place indeed Ior the beginnings oI a technology which would, eventually, deliver everything Irom tourist inIormation, online shopping and advertisements, Iinancial data, weather Iorecasts and much more to your personal computer. %im Berners-ee is the inventor oI the Web. In 1989, %im was working in a computing services section oI CERN when he came up with the concept; at the time he had no idea that it would be implemented on such an enormous scale. Particle physics research oIten involves collaboration among institutes Irom all over the world. %im had the idea oI enabling researchers Irom remote sites in the world to organize and pool together inIormation. But Iar Irom simply making available a large number oI research documents as Iiles that could be downloaded to individual computers, he suggested that you could actually link the text in the Iiles themselves. In other words, there could be cross-reIerences Irom one research paper to another. %his would mean that while reading one research paper, you could quickly display part oI another paper that holds directly relevant text or diagrams. Documentation oI a scientiIic and mathematical nature would thus be represented as a `web' oI inIormation held in electronic Iorm on computers across the world. %his, %im thought, could be done by using some Iorm oI hypertext, some way oI linking documents together by using buttons on the screen, which you simply clicked on to jump Irom one paper to another. BeIore coming to CERN, %im had already worked on document production and text processing, and had developed his Iirst hypertext system, `Enquire', in 1980 Ior his own personal use. %im's prototype Web browser on the NeX% computer came out in 1990. Through 1990: The time was ripe for Tim's invention %he Iact that the Web was invented in the early 1990s was no coincidence. Developments in communications technology during that time meant that, sooner or later, something like the Web was bound to happen. For a start, hypertext was coming into vogue and being used on computers. Also, Internet users were gaining in the number oI users on the system: there was an increasing audience Ior distributed inIormation. ast, but not least, the new domain name system had made it much easier to address a machine on the Internet. Hypertext lthough already established as a concept by academics as early as the 1940s, it was with the advent oI the personal computer that hypertext came out oI the cupboard. In the late 1980s, Bill Atkinson, an exceptionally giIted programmer working Ior Apple Computer Inc., came up with an application called ypercard Ior the acintosh. Hypercard enabled you to construct a series oI on-screen `Iiling cards' that contained textual and graphical inIormation. Users could navigate these by pressing on-screen buttons, taking themselves on a tour oI the inIormation in the process. Hypercard set the scene Ior more applications based on the Iiling card idea. %oolbook Ior the PC was used in the early 1990s Ior constructing hypertext training courses that had `pages' with buttons which could go Iorward or backward or jump to a new topic. Behind the scenes, buttons would initiate little programs called scripts. %hese scripts would control which page would be presented next; they could even run a small piece oI animation on the screen. %he application entitled Guide was a similar application Ior UNIX and the PC. Hypercard and its imitators caught the popular imagination. However, these packages still had one major limitation: hypertext jumps could only be made to Iiles on the same computer. Jumps made to computers on the other side oI the world were still out oI the question. Nobody yet had implemented a system involving hypertext links on a global scale. The domain name system By the middle 1980s, the Internet had a new, easy-to-use system Ior naming computers. %his involved using the idea oI the domain name. A domain name comprises a series oI letters separated by dots, Ior example: `www.bo.com' or `www.erb.org.uk'. %hese names are the easy-to-use alternative to the much less manageable and cumbersome IP address numbers. A program called Distributed Name Service (DNS) maps domain names onto IP addresses, keeping the IP addresses `hidden'. DNS was an absolute breakthrough in making the Internet accessible to those who were not computer nerds. As a result oI its introduction, email addresses became simpler. Previous to DNS, email addresses had all sorts oI hideous codes such as exclamation marks, percent signs and other extraneous inIormation to speciIy the route to the other machine. Choosing the right approach to create a global hypertext system %o %im Berners-ee, global hypertext links seemed Ieasible, but it was a matter oI Iinding the correct approach to implementing them. Using an existing hypertext package might seem an attractive proposition, but this was impractical Ior a number oI reasons. %o start with, any hypertext tool to be used worldwide would have to take into account that many types oI computers existed that were linked to the Internet: Personal Computers, acintoshes, UNIX machines and simple terminals. Also, many desktop publishing methods were in vogue: SG, InterleaI, a%ex, icrosoIt Word, and %roII among many others. Commercial hypertext packages were computer- speciIic and could not easily take text Irom other sources; besides, they were Iar too complicated and involved tedious compiling oI text into internal Iormats to create the Iinal hypertext system. What was needed was something very simple, at least in the beginning. %im demonstrated a basic, but attractive way oI publishing text by developing some soItware himselI, and also his own simple protocol - H%%P - Ior retrieving other documents' text via hypertext links. %im's own protocol, H%%P, stands Ior Hyper%ext %ransIer Protocol. %he text Iormat Ior H%%P was named H%, Ior Hyper%ext ark-up anguage; %im's hypertext implementation was demonstrated on a NeX% workstation, which provided many oI the tools he needed to develop his Iirst prototype. By keeping things very simple, %im encouraged others to build upon his ideas and to design Iurther soItware Ior displaying H%, and Ior setting up their own H% documents ready Ior access. Tim bases his HTML on an existing internationally agreed upon method of text mark-up %he H% that %im invented was strongly based on SG (Standard Generalized ark-up anguage), an internationally agreed upon method Ior marking up text into structural units such as paragraphs, headings, list items and so on. SG could be implemented on any machine. %he idea was that the language was independent oI the Iormatter (the browser or other viewing soItware) which actually displayed the text on the screen. %he use oI pairs oI tags such as <TITLE and</TITLE is taken directly Irom SG, which does exactly the same. %he SG elements used in %im's H% included P (paragraph); H1 through H6 (heading level 1 through heading level 6); JL (ordered lists); UL (unordered lists); LI (list items) and various others. What SG does not include, oI course, are hypertext links: the idea oI using the anchor element with the HREF attribute was purely %im's invention, as was the now-Iamous `www.name.name' Iormat Ior addressing machines on the Web. Basing H% on SG was a brilliant idea: other people would have invented their own language Irom scratch but this might have been much less reliable, as well as less acceptable to the rest oI the Internet community. Certainly the simplicity oI H%, and the use oI the anchor element A Ior creating hypertext links, was what made %im's invention so useIul. $eptember 1991: Open discussion about HTML across the Internet begins Far Irom keeping his ideas private, %im made every attempt to discuss them openly online across the Internet. Coming Irom a research background, this was quite a natural thing to do. In September 1991, the WWW-talk mailing list was started, a kind oI electronic discussion group in which enthusiasts could exchange ideas and gossip. By 1992, a handIul oI other academics and computer researchers were showing interest. Dave Raggett Irom Hewlett-Packard's abs in Bristol, England, was one oI these early enthusiasts, and, Iollowing electronic discussion, Dave visited %im in 1992. Here, in %im's tiny room in the bowels oI the sprawling buildings oI CERN, the two engineers Iurther considered how H% might be taken Irom its current beginnings and shaped into something more appropriate Ior mass consumption. %rying to anticipate the kind oI Ieatures that users really would like, Dave looked through magazines, newspapers and other printed media to get an idea oI what sort oI H% Ieatures would be important when that same inIormation was published online. Upon return to England, Dave sat down at his keyboard and resolutely composed H%, a richer version oI the original H%. Late 1992: NC$A is intrigued by the idea of the Web eanwhile on the other side oI the world, %im's ideas had caught the eye oI Joseph Hardin and Dave %hompson, both oI the National Center Ior Supercomputer Applications, a research institute at the University oI Illinois at Champaign-Urbana. %hey managed to connect to the computer at CERN and download copies oI two Iree Web browsers. Realizing the importance oI what they saw, NCSA decided to develop a browser oI their own to be called 48aic. Among the programmers in the NCSA team were arc Andreessen - who later made his millions by selling Web products - and the brilliant programmer Eric Bina - who also became rich, courtesy oI the Web. Eric Bina was a kind oI soItware genius who reputedly could stay up three nights in succession, typing in a reverie oI hacking at his computer. ecember 1992: Marc Andreessen makes a brief appearance on WWW- talk Early Web enthusiasts exchanged ideas and gossip over an electronic discussion group called WWW-talk. %his was where Dave Raggett, %im Berners-ee, Dan Connolly and others debated how images (photographs, diagrams, illustrations and so on) should be inserted into H% documents. Not everyone agreed upon the way that the relevant tag should be implemented, or even what that tag should be called. Suddenly, arc Andreessen appeared on WWW-talk and, without Iurther to-do, introduced an idea Ior the IMG tag by the osaic team. It was quite plain that the others were not altogether keen on the design oI IMG, but Andreessen was not easily redirected. %he IMG tag was implemented in the Iorm suggested by the osaic team on its browser and remains to this day Iirmly implanted in H%. %his was much to the chagrin oI supporters back in academia who invented several alternatives to IMG in the years to come. Now, with the coming oI H% 4, the JBJECT tag potentially replaces IMG, but this is, oI course, some years later. March 1993: Lou Montulli releases the Lynx browser version 2.0a ou ontulli was one oI the Iirst people to write a text-based browser, ynx. %he ynx browser was a text-based browser Ior terminals and Ior computers that used DOS without Windows. ou ontulli was later recruited to work with Netscape Communications Corp., but nonetheless remained partially loyal to the idea oI developing H% as an open standard, proving a real asset to the H% working group and the H% Editorial Board in years to come. ou's enthusiasm Ior good, expensive wine, and his knowledge oI excellent restaurants in the Silicon Valley area were to make the standardization oI H% a much more pleasurable process. Early 1993: ave Raggett begins to write his own browser While Eric Bina and the NCSA osaic gang were hard at it hacking through the night, Dave Raggett oI Hewlett-Packard abs in Bristol was working part-time on his Arena browser, on which he hoped to demonstrate all sorts oI newly invented Ieatures Ior H%. April 1993: The Mosaic browser is released In April 1993, version 1 oI the osaic browser was released Ior Sun icrosystems Inc.'s workstation, a computer used in soItware development running the UNIX operating system. osaic extended the Ieatures speciIied by %im Berners-ee; Ior example, it added images, nested lists and Iill-out Iorms. Academics and soItware engineers later would argue that many oI these extensions were very much ad hoc and not properly designed. Late 1993: Large companies underestimate the importance of the Web Dave Raggett's work on the Arena browser was slow because he had to develop much oI it single-handedly: no money was available to pay Ior a team oI developers. %his was because Hewlett-Packard, in common with many other large computer companies, was quite unconvinced that the Internet would be a success; indeed, the need Ior a global hypertext system simply passed them by. For many large corporations, the question oI whether or not any money could be made Irom the Web was unclear Irom the outset. %here was also a misconception that the Internet was mostly Ior academics. In some companies, senior management was assured that the telephone companies would provide the technology Ior global communications oI this sort, anyway. %he result was that individuals working in research labs in the commercial sector were unable to devote much time to Web development. %his was a bitter disappointment to some researchers, who grateIully would have committed nearly every waking moment toward shaping what they envisioned would be the communications system oI the Iuture. Dave Raggett, realizing that there were not enough working hours leIt Ior him to succeed at what he Ielt was an immensely important task, continued writing his browser at home. %here he would sit at a large computer that occupied a Iair portion oI the dining room table, sharing its slightly sticky surIace with paper, crayons, ego bricks and bits oI halI-eaten cookies leIt by the children. Dave also used the browser to show text Ilow around images, Iorms and other aspects oI H% at the First WWW ConIerence in Geneva in 1994. %he Arena browser was later used Ior development work at CERN. May 1994: NC$A assigns commercial rights for Mosaic browser to $pyglass, Inc. In ay 1994, Spyglass, Inc. signed a multi-million dollar licensing agreement with NCSA to distribute a commercially enhanced version oI osaic. In August oI that same year, the University oI Illinois at Champaign-Urbana, the home oI NCSA, assigned all Iuture commercial rights Ior NCSA osaic to Spyglass. May 1994: The first World Wide Web conference is held in Geneva, with HTML+ on show Although arc Andreessen and Jim Clark had commercial interests in mind, the rest oI the World Wide Web community had quite a diIIerent attitude: they saw themselves as joint creators oI a wonderIul new technology, which certainly would beneIit the world. %hey were jiggling with excitement. Even quiet and retiring academics became animated in discussion, and many seemed evangelical about their new-Iound god oI the Web. At the Iirst World Wide Web conIerence organized by CERN in ay 1994, all was merry with 380 attendees - who mostly were Irom Europe but also included many Irom the United States. You might have thought that arc Andreessen, Jim Clark and Eric Bina surely would be there, but they were not. For the most part, participants were Irom the academic community, Irom institutions such as the World eteorological Organization, the International Center Ior %heoretical Physics, the University oI Iceland and so on. ater conIerences had much more oI a commercial Ieel, but this one was Ior technical enthusiasts who instinctively knew that this was the start oI something big.
At the World Wide Web conIerence in Geneva. eIt to right: Joseph Hardin Irom NCSA, Robert Cailliau Irom CERN, %im Berners-ee Irom CERN and Dan Connolly (oI H% 2 Iame) then working Ior Hal soItware. During the course oI that week, awards were presented Ior notable achievements on the Web; these awards were given to arc Andreessen, ou ontulli, Eric Bina, Rob Hartill and Kevin Hughes. Dan Connolly, who proceeded to deIine H% 2, gave a slide presentation entitled 3ter4perability. Why Every43e Wi38, which explained why it was important that the Web operated with a proper H% speciIication. Strange to think that at least three oI the people who received awards at the conIerence were later to Ily in the Iace oI Dan's idea that adopting a cross-company uniIorm standard Ior H% was essential. Dave Raggett had been working on some new H% ideas, which he called H%. At the conIerence it was agreed that the work on H% should be carried Iorward to lead to the development oI an H% 3 standard. Dave Raggett, together with CERN, developed Arena Iurther as a prooI-oI-concept browser Ior this work. Using Arena, Dave Raggett, Henrik Frystyk Nielsen, Hkon ie and others demonstrated text Ilow around a Iigure with captions, resizable tables, image backgrounds, math and other Ieatures.
A panel discussion at the Geneva conIerence. Kevin Altis Irom Intel, Dave Raggett Irom HP abs, Rick `Channing' Rodgers Irom the National ibrary oI edicine. %he conIerence ended with a glorious evening cruise on board a paddle steamer around ake Geneva with W4lfga3g a3d the Werew4lve8 providing Jazz accompaniment. $eptember 1994: The Internet Engineering Task Force (IETF) sets up an HTML working group In early 1994, an Internet Engineering %ask Force working group was set up to deal with H%. he Internet Engineering %ask Force is the international standards and development body oI the Internet and is a large, open community oI network designers, operators, vendors and researchers concerned with the evolution and smooth operation oI the Internet architecture. %he technical work oI the IE%F is done in working groups, which are organized by topic into several areas; Ior example, security, network routing, and applications. %he IE%F is, in general, part oI a culture that sees the Internet as belonging to %he People. %his was even more so in the early days oI the Web. he Ieelings oI the good `ole days oI early Web development are captured in the song, %he Net Flag, which can be Iound `somewhere on the Internet'. %he Iirst verse runs as Iollows: %he pe4ple8 web i8 deepe8t red, A3d 4ft it8 killed 4:r r4:ter8 dead. B:t ere the b:g8 grew te3 day8 4ld, %he patche8 fixed the br4ke3 c4de. Ch4r:8. S4 rai8e the 4pe3 8ta3dard high Withi3 it8 c4de8 well live 4r die %h4:gh c4ward8 fli3ch a3d Bill Gate8 83eer8 Well keep the 3et flag flyi3g here. In keeping with normal IE%F practices, the H% working group was open to anyone in the engineering community: any interested computer scientist could potentially become a member and, once on its mailing list, could take part in email debate. %he H% working group met approximately three times a year, during which time they would enjoy a good haggle about H% Ieatures present and Iuture, be pleasantly suIIused with coIIee and beer, striding about plush hotel lobbies sporting pony tails, %-shirts and jeans without the slightest care. uly 1994: HTML specification for HTML 2 is released During 1993 and early 1994, lots oI browsers had added their own bits to H%; the language was becoming ill-deIined. In an eIIort to make sense oI the chaos, Dan Connolly and colleagues collected all the H% tags that were widely used and collated them into a draIt document that deIined the breadth oI what %im Berners-ee called H% 2. %he draIt was then circulated through the Internet community Ior comment. With the patience oI a saint, Dan took into account numerous suggestions Irom H% enthusiasts Iar and wide, ensuring that all would be happy with the eventual H% 2 deIinition. He also wrote a Document %ype DeIinition Ior H% 2, a kind oI mathematically precise description oI the language. November 1994: Netscape is formed During 1993, arc Andreessen apparently Ielt increasingly irritated at simply being 43 the osaic project rather than in charge oI it. Upon graduating, he decided to leave NCSA and head Ior CaliIornia where he met Jim Clark, who was already well known in Silicon Valley and who had money to invest. %ogether they Iormed osaic Communications, which then became Netscape Communications Corp. in November, 1994. What they planned to do was create and market their very own browser. %he browser they designed was immensely successIul - so much so in Iact, that Ior some time to come, many users would mistakenly think that Netscape invented the Web. Netscape did its best to make sure that even those who were relying on a low- bandwidth connection - that is, even those who only had a modem-link Irom a home personal computer - were able to access the Web eIIectively. %his was greatly to the company's credit. Following a predictable path, Netscape began inventing its own H% tags as it pleased without Iirst openly discussing them with the Web community. Netscape rarely made an appearance at the big International WWW conIerences, but it seemed to be driving the H% standard. It was a curious situation, and one that the inner core oI the H% community Ielt they must redress. Late 1994: The World Wide Web Consortium forms %he World Wide Web Consortium was Iormed in late 1994 to IulIill the potential oI the Web through the development oI open standards. %hey had a strong interest in H%. Just as an orchestra insists on the best musicians, so the consortium recruited many oI the best-known names in the Web community. Headed up by %im Berners- ee, here are just some oI the players in the band today (1997):
embers oI the World Wide Web Consortium at the I% site. From leIt to right are Henrick Frystyk Neilsen, Anselm Baird-Smith, Jay Sekora, Rohit Khare, Dan Connolly, Jim Gettys, %im Berners-ee, Susan Hardy, Jim iller, Dave Raggett, %om Greene, Arthur Secret, Karen acArthur. O Dave Raggett on H%; Irom the United Kingdom. O Arnaud le Hors on H%; Irom France. O Dan Connolly on H%; Irom the United States. O Henrik Frystyk Nielsen on H%%P and on enabling the Web to go Iaster; Irom Denmark. O Hkon ie on style sheets; Irom Norway. He is located in France, working at INRIA. O Bert Bos on style sheets and layout; Irom the Netherlands. O Jim iller on investigating technologies that could be used in rating the content oI Web pages; Irom the United States. O Chris illey on style sheets and Iont support; Irom the United Kingdom. %he W3 Consortium is based in part at the aboratory oI Computer Science at assachusetts' Institute oI %echnology in Cambridge, assachusetts, in the United States; and in part at INRIA, the 38tit:t Nati43al de Recherche e3 3f4rmatiq:e et e3 A:t4matiq:e, a French governmental research institute. %he W3 Consortium is also located in part at Keio University in Japan. You can look at the Consortium's Web pages on `www.w3.org'. %he consortium is sponsored by a number oI companies that directly beneIit Irom its work on standards and other technology Ior the Web. %he member companies include Digital Equipment Corp.; Hewlett-Packard Co.; IB Corp.; icrosoIt Corp.; Netscape Communications Corp.; and Sun icrosystems Inc., among many others. Through 1995: HTML is extended with many new tags During 1995, all kinds oI new H% tags emerged. Some, like the BGCJLJR attribute oI the BJDY element and FJNT FACE, which control stylistic aspects oI a document, Iound themselves in the black books oI the academic engineering community. `You're not supposed to be able to do things like that in H%,' they would protest. It was their belieI that such things as text color, background texture, Iont size and Iont Iace were deIinitely outside the scope oI a language when their only intent was to speciIy how a document would be organized. March 1995: HTML 3 is published as an Internet raft Dave Raggett had been working Ior some time on his new ideas Ior H%, and at last he Iormalized them in a document published as an Internet DraIt in arch, 1995. All manner oI H% Ieatures were covered. A new tag Ior inserting images called FIG was introduced, which Dave hoped would supersede IMG, as well as a whole gambit oI Ieatures Ior marking up math and scientiIic documents. Dave dealt with H% tables and tabs, Iootnotes and Iorms. He also added support Ior style sheets by including a $TYLE tag and a CLA$$ attribute. %he latter was to be available on every element to encourage authors to give H% elements styles, much as you do in desktop publishing. Although the H% 3 draIt was very well received, it was somewhat diIIicult to get it ratiIied by the IE%F. %he belieI was that the draIt was too large and too Iull oI new proposals. %o get consensus on a draIt 150 pages long and about which everyone wanted to voice an opinion was optimistic - to say the least. In the end, Dave and the inner circle oI the H% community decided to call it a day. OI course, browser writers were very keen on supporting H% 3 - in theory. Inevitably, each browser writer chose to implement a diIIerent subset oI H% 3's Ieatures as they were so inclined, and then proudly proclaimed to support the standard. %he conIusion was mind-boggling, especially as browsers even came out withexte38i438 to H% 3, implying to the ordinary gent that 34rmal H% 3 was, oI course, already supported. Was there an oIIicial H% 3 standard or not? %he truth was that there was not, but reading the computer press you might never have known the diIIerence. March 1995: A furor over the HTML Tables specification Dave Raggett's H% 3 draIt had tackled the tabular organization oI inIormation in H%. Arguments over this aspect oI the language had continued Ior some time, but now it was time to really get going. At the 32nd meeting oI the IE%F in Danvers, assachusetts, Dave Iound a group Irom the SG brethren who were up in arms over part oI the tables speciIication because it contradicted the CAS table model. Groups such as the US Navy use the CAS table model in complex documentation. AIter long negotiation, Dave managed to placate the CAS table delegates and altered the draIt to suit their needs. H% tables, which were not in H% originally, Iinally surIaced Irom the H% 3 draIt to appear in H% 3.2. %hey continue to be used extensively Ior the purpose oI providing a layout grid Ior organizing pictures and text on the screen. August 1995: Microsoft's Internet Explorer browser comes out Version 1.0 oI icrosoIt Corp.'s Internet Explorer browser was announced. %his browser was eventually to compete with Netscape's browser, and to evolve its own H% Ieatures. %o a certain extent, icrosoIt built its business on the Web by extending H% Ieatures. %he ActiveX Ieature made icrosoIt's browser unique, and Netscape developed a plug-in called Ncompass to handle ActiveX. %his whole idea whereby one browser experiments with an extension to H% only to Iind others adding support to keep even, continues to the present. In November 1995, icrosoIt's Internet Explorer version 2.0 arrived Ior its Windows N% and Windows 95 operating systems. $eptember 1995: Netscape submits a proposal for frames By this time, Netscape submitted a proposal Ior Irames, which involved the screen being divided into independent, scrollable areas. %he proposal was implemented on Netscape's Navigator browser beIore anyone really had time to comment on it, but nobody was surprised. November 1995: The HTML working group runs into problems %he H% working group was an excellent idea in theory, but in practice things did not go quite as expected. With the immense popularity oI the Web, the H% working group grew larger and larger, and the volume oI associated email soared exponentially. Imagine one hundred people trying to design a house. `I want the windows to be double-glazed,' says one. `Yes, but shouldn't we make them smaller, while we're at it,' questions another. Still others chime in: `What material do you propose Ior the Irames - I'm not having them in plastic, that's Ior sure'; `I suggest that we don't have windows, as such, but include small, circular port-holes on the Southern elevation...' and so on. You get the idea. %he H% working group emailed each other in a Irenzy oI electronic activity. In the end, its members became so snowed under with email that no time was leIt Ior programming. For soItware engineers, this was a sorry state oI aIIairs, indeed: `I came back aIter just three days away to Iind over 2000 messages waiting,' was the unhappy lament oI the H% enthusiast. Anyway, the H% working group still was losing ground to the browser vendors. %he group was notably slow in coming to a consensus on a given H% Ieature, and commercial organizations were hardly going to sit around having tea, pleasantly conversing on the weather whilst waiting Ior the results oI debates. And they did not. November 1995: Vendors unite to form a new group dedicated to developing an HTML standard In November, 1995 Dave Raggett called together representatives oI the browser companies and suggested they meet as a small group dedicated to standardizing H%. Imagine his surprise when it worked! ou ontulli Irom Netscape, Charlie Kindel Irom icrosoIt, Eric Sink Irom Spyglass, Wayne Gramlich Irom Sun icrosystems, Dave Raggett, %im Berners-ee and Dan Connolly Irom the W3 Consortium, and Jonathan Hirschman Irom PathIinder convened near Chicago and made quick and eIIective decisions about H%. November 1995: $tyle sheets for HTML documents begin to take shape Bert Bos, Hkon ie, Dave Raggett, Chris illey and others Irom the World Wide Web Consortium and others met in Versailles near Paris to discuss the deployment oI Cascading Style Sheets. %he name Cascading Style Sheets implies that more than one style sheet can interact to produce the Iinal look oI the document. Using a special language, the CSS group advocated that everyone would soon be able to write simple styles Ior H%, as one would do in icrosoIt Word and other desktop publishing soItware packages. %he SG contingent, who preIerred a ISP-like language called DSSS - it rhymes with whistle - seemed out oI the race when icrosoIt promised to implement CSS on its Internet Explorer browser. November 1995: Internationalization of HTML Internet raft Gavin Nicol, Gavin Adams and others presented a long paper on the internationalization oI the Web. %heir idea was to extend the capabilities oI H% 2, primarily by removing the restriction on the character set used. %his would mean that H% could be used to mark up languages other than those that use the atin-1 character set to include a wider variety oI alphabets and character sets, such as those that read Irom right to leIt. ecember 1995: The HTML working group is dismantled Since the IE%F H% working group was having diIIiculties coming to consensus swiItly enough to cope with such a Iast-evolving standard, it was eventually dismantled. February 1996: The HTML ERB is formed Following the success oI the November, 1995 meeting, the World Wide Web Consortium Iormed the H% Editorial Review Board to help with the standardization process. %his board consisted oI representatives Irom IB, icrosoIt, Netscape, Novell, SoItquad and the W3 Consortium, and did its business via telephone conIerence and email exchanges, meeting approximately once every three months. Its aim was to collaborate and agree upon a common standard Ior H%, thus putting an end to the era when browsers each implemented a diIIerent subset oI the language. %he bad Iairy oI incompatibility was to be banished Irom the H% kingdom Iorever, or one could hope so, perhaps. Dan Connolly oI the W3 Consortium, also author oI H% 2, deItly accomplished the Ieat oI chairing what could be quite a raucous meeting oI the clans. Dan managed to make sure that all representatives had their say and listened to each other's point oI view in an orderly manner. A strong chair was absolutely essential in these meetings. In preparation Ior an ERB meeting, speciIications describing new aspects oI H% were made electronically available Ior ERB members to read. %hen, at the meeting itselI, the proponent explained some oI the rationale behind the speciIication, and then dearly hoped that all who were present also concurred that the encapsulated ideas were sound. Questions such as, `should a particular Ieature be included, or should we kick it out,' would be considered. Each representative would air his point oI view. II all went well, the speciIication might eventually see daylight and become a standard. At the time oI writing, the next H% standard, code-named C4:gar, has begun its long journey in this direction. %he BLINK tag was ousted in an H% ERB meeting. Netscape would only abolish it iI icrosoIt agreed to get rid oI MARQUEE; the deal was struck and both tags disappeared. Both oI these extensions have always been considered slightly gooIy by all parties. any tough decisions were to be made about the JBJECTspeciIication. Out oI a chaos oI several diIIerent tags - EMBED, APP, APPLET, DYN$RC and so on - all associated with embedding diIIerent types oI inIormation in H% documents, a single JBJECT tag was chosen in April, 1996. %his JBJECT tag becomes part oI the H% standard, but not until 1997. April 1996: The W3 Consortium working draft on $cripting comes out Based on an initial draIt by Charlie Kindel, and, in turn, derived Irom Netscape's extensions Ior JavaScript, a W3C working draIt on the subject oI Scripting was written by Dave Raggett. In one Iorm or another, this draIt should eventually become part oI standard H%. uly 1996: Microsoft seems more interested than first imagined in open standards In April 1996, icrosoIt's Internet Explorer became available Ior acintosh and Windows 3.1 systems. %homas Reardon had been excited by the Web even at the second WWW conIerence held in Darmstadt, Germany in 1995. One year later, he seemed very interested in the standardization process and apparently wanted icrosoIt to do things the right way with the W3C and with the IE%F. %raditionally, developers are somewhat disparaging about icrosoIt, so this was an interesting turn oI events. It should be said that icrosoIt did, oI course, invent tags oI their own, just as did Netscape. %hese included the remarkable MARQUEE tag that caused great mirth among the more academic H% community. %he MARQUEE tag made text dance about all over the screen - not exactly a Ieature you would expect Irom a serious language concerned with structural mark-up such as paragraphs, headings and lists. %he worry that a massive introduction oI proprietary products would kill the Web continued. Netscape acknowledged that vendors needed to push ahead oI the standards process and innovate. %hey pointed out that, iI users like a particular Netscape innovation, then the market would drive it to become a de Iacto standard. %his seemed quite true at the time and, indeed, Netscape has innovated on top oI that standard again. It's precisely this sequence oI events that Dave Raggett and the World Wide Web Consortium were trying to avoid. ecember 1996: Work on `Cougar' is begun %he H% ERB became the H% Working Group and began to work on `Cougar', the next version oI H% with completion late Spring, 1997, eventually to become H% 4. With all sorts oI innovations Ior the disabled and support Ior international languages, as well as providing style sheet support, extensions to Iorms, scripting and much more, H% 4 breaks away Irom the simplicity and charm oI H% oI earlier years!
Dave Raggett, co-editor oI the H% 4 speciIication, at work composing at the keyboard at his home in Boston. anuary 1997: HTML 3.2 is ready Success! In January 1997, the W3 Consortium Iormally endorsed H% 3.2 as an H% cross-industry speciIication. H% 3.2 had been reviewed by all member organizations, including major browser vendors such as Netscape and icrosoIt. %his meant that the speciIication was now stable and approved oI by most Web players. By providing a neutral Iorum, the W3 Consortium had successIully obtained agreement upon a standard version oI H%. %here was great rejoicing, indeed. H% 3.2 took the existing IE%F H% 2 standard and incorporated Ieatures Irom H% and H% 3. H% 3.2 included tables, applets, text Ilow around images, subscripts and superscripts. One might well ask why H% 3.2 was called H% 3.2 and not, let's say, H% 3.1 or H% 3.5. %he version number is open to discussion just as much as is any other aspect oI H%. %he version number is oIten one oI the last details to be decided. &pdate Spring 1998: Cougar has now Iully materialized as H% 4.0 and is a W3C Proposed Recommendation. But do the major browsers implement H% 4.0, you wonder? As usual in the computer industry, there is no simple answer. Certainly things are heading in that direction. Neither Netscape's or icrosoIts browser completely implements style sheets in the way speciIied, which is a pity, but no doubt they will make amends. %here are a number oI pecularities in the way that OBJEC% works but we very much hope that this will also eventually be implemented in a more consistent manner.
The History of HTNL
A markup language combines text as well as coded instructions on how to format that text and the term "markup" originates from the traditional practice of 'marking up' the margins of a paper manuscript with printer's instructions. Nowadays, however, if you mention the term 'markup' to any knowledgeable web author, the first thing they are likely to think of is 'HTML'.
So from whence came the stuff that web pages are made of?...
n the Beginning
HTML which is short for yper%ext arkup anguage is the official language of the World Wide Web and was first conceived in 1990. HTML is a product of SGML (Standard Generalized Markup Language) which is a complex, technical specification describing markup languages, especially those used in electronic document exchange, document management, and document publishing. HTML was originally created to allow those who were not specialized in SGML to publish and exchange scientific and other technical documents. HTML especially facilitated this exchange by incorporating the ability to link documents electronically using hyperlinks. Thus the name Hypertext Markup Language.
However, it was quickly realized by those outside of the discipline of scientific documentation that HTML was relatively easy to learn, was self contained and lent itself to a number of other applications. With the evolution of the World Wide Web, HTML began to proliferate and quickly spilled over into the mainstream.
Browser Wars
Soon, companies began creating browsers the software required to view an HTML document, i.e., a web page and as they gained popularity it gave rise to competition and other web browsers. t may surprise some that back in late 1995, Netscape which now plays a distant second to the King Kong of browsers, nternet Explorer was the dominant browser on the market. n fact, Netscape was the first browser to support Javascript, animated gifs and HTML frames.
Thus began the so-called 'browser wars' and, along with seeing who could implement more 'bells and whistles' than the other guy, browser makers also began inventing proprietary HTML elements that only worked with their browsers. Some examples of these are the <marquee</marquee tags (scrolling text) which originally only worked with nternet Explorer and the<blink</blink tags (blinking text) which still only works with Gecko- based browsers such as Firefox.
A side effect of all this competition was that HTML became fragmented and web authors soon found that their web pages looked fine in one browser but not in another. Hence it became increasingly difficult and time consuming to create a web page that would display uniformly across a number of different browsers. (This phenomenon remains to some extent to this very day.)
Meanwhile, an organization known as the World Wide Web Consortium (W3C for short) was working steadily along in the background to standardize HTML. Several recommendations were published by the W3C during the late 1990s which represented the official versions of HTML and provided an ongoing comprehensive reference for web authors. Thus the birth of HTML 2.0 in September 1995, HTML 3.2 in January 1997 and HTML 4.01 in December 1999.
By now, nternet Explorer (E) had eclipsed Netscape Navigator as the browser to use while surfing the net due to its superior capabilities but also largely due to the fact that the E came bundled with the Windows operating system. Essentially when people bought computers using the Windows OS, it had the 'internet installed on it'. This tended to suit people just fine since the typical newcomer to computers was someone who was tentatively striking forth to take on this intimidating new-fangled technology that was crammed to the rafters with indecipherable acronyms, software help files that made no sense and buggy programs. Hence, the more 'instant' solutions this new technology offered, the better it was.
Bad Grammar
As the World Wide Web approached adulthood hosting a wide variety of would-be and professional web page authors, it became increasingly apparent that cyberspace was filling up with a lot of badly written HTML.
This was due to some laziness and inexperience but was also the product of another instant solution involving web authoring tools, most particularly WYSWYG editors, which tended to produce bloated and messy source code. As the browser wars continued although by now it was pretty much of a massacre the lead browser had developed capabilities akin to a junkyard dog which could gobble up any half-baked web page that it came across. This was all very fine and well but the resources (program source code, RAM on the user's computer, etcetera) required to run a browser that can consume just about anything was exhorbitant compared to what could be. And as the market dictated the shape of things to come, future browsers were bound follow the lead dog thus encouraging more junk code to fill up the web.
To remedy this situation, the W3C came up with a more regimental form of HTML with the intention to create a rigid standard to which web authors were encouraged to conform. This was supporting an effort to eventually 'clean up' or streamline the World Wide Web and ultimately replace presentationalelements such as 14nt with another documentational structure known asCascading Style Sheets (CSS). n theory, once this transformation occurred, the web would place less demand on the next generation of web browsers and most specifically it would accomodate the low processing power of new portable devices such as PDAs. Hence the birth of the next generation of HTML called HTML, the ' X ' representing that this version of HTML was based on XML (eXtensible Markup Language) instead of SGML.
P1ML lrom Wlklpedla Lhe free encyclopedla lor Lhe use of P1ML on Wlklpedla see PelpP1ML ln wlklLexL P1ML (Pyper1exL Markup Language) lllename exLenslon hLml hLm lnLerneL medla Lype LexL/hLml 1ype code 1Lx1 unlform 1ype ldenLlfler publlchLml ueveloped by World Wlde Web ConsorLlum WPA1WC 1ype of formaL Markup language LxLended from SCML LxLended Lo xP1ML SLandard(s) lSC/lLC 13443 W3C P1ML 401 W3C P1ML3 (drafL)
Pyper1exL Markup Language (P1ML) ls Lhe predomlnanL markup language for web pages P1ML elemenLs are Lhe baslc bulldlngblocks of webpages P1ML ls wrlLLen ln Lhe form of P1ML elemenLs conslsLlng of Lags enclosed ln angle brackeLs (llke hLml) wlLhln Lhe web page conLenL P1ML Lags mosL commonly come ln palrs llke h1 and /h1 alLhough some Lags known as empLy elemenLs are unpalred for example lmg 1he flrsL Lag ln a palr ls Lhe sLarL Lag Lhe second Lag ls Lhe end Lag (Lhey are also called openlng Lags and closlng Lags) ln beLween Lhese Lags web deslgners can add LexL Lags commenLs and oLher Lypes of LexLbased conLenL 1he purpose of a web browser ls Lo read P1ML documenLs and compose Lhem lnLo vlslble or audlble web pages 1he browser does noL dlsplay Lhe P1ML Lags buL uses Lhe Lags Lo lnLerpreL Lhe conLenL of Lhe page P1ML elemenLs form Lhe bulldlng blocks of all webslLes P1ML allows lmages and ob[ecLs Lo be embedded and can be used Lo creaLe lnLeracLlve forms lL provldes a means Lo creaLe sLrucLured documenLs by denoLlng sLrucLural semanLlcs for LexL such as headlngs paragraphs llsLs llnks quoLes and oLher lLems lL can embed scrlpLs ln languages such as !avaScrlpL whlch affecL Lhe behavlor of P1ML webpages Web browsers can also refer Lo Cascadlng SLyle SheeLs (CSS) Lo deflne Lhe appearance and layouL of LexL and oLher maLerlal 1he W3C malnLalner of boLh Lhe P1ML and Lhe CSS sLandards encourages Lhe use of CSS over expllclLly presenLaLlonal P1ML markup1 ConLenLs hlde 1 PlsLory 11 Crlglns 12 llrsL speclflcaLlons 13 verslon hlsLory of Lhe sLandard 131 P1ML verslon Llmellne 132 P1ML drafL verslon Llmellne 133 xP1ML verslons 2 Markup 21 LlemenLs 211 LlemenL examples 212 ALLrlbuLes 22 CharacLer and enLlLy references 23 uaLa Lypes 24 uocumenL Lype declaraLlon 3 SemanLlc P1ML 4 uellvery 41 P11 42 P1ML emall 43 namlng convenLlons 44 P1ML AppllcaLlon 3 CurrenL varlaLlons 31 SCMLbased versus xMLbased P1ML 32 1ranslLlonal versus sLrlcL 33 lrameseL versus LranslLlonal 34 Summary of speclflcaLlon verslons 6 PyperLexL feaLures noL ln P1ML 7 W?SlW?C edlLors 8 See also 9 8eferences 10 LxLernal llnks edlLPlsLory
edlLCrlglns
1lm 8ernersLee ln 1980 physlclsL 1lm 8ernersLee who was a conLracLor aL CL8n proposed and proLoLyped LnCul8L a sysLem for CL8n researchers Lo use and share documenLs ln 1989 8ernersLee wroLe a memo proposlng an lnLerneLbased hyperLexL sysLem2 8ernersLee speclfled P1ML and wroLe Lhe browser and server sofLware ln Lhe lasL parL of 1990 ln LhaL year 8ernersLee and CL8n daLa sysLems englneer 8oberL Callllau collaboraLed on a [olnL requesL for fundlng buL Lhe pro[ecL was noL formally adopLed by CL8n ln hls personal noLes3 from 1990 he llsLs4 some of Lhe many areas ln whlch hyperLexL ls used and puLs an encyclopedla flrsL edlLllrsL speclflcaLlons 1he flrsL publlcly avallable descrlpLlon of P1ML was a documenL called P1ML 1ags flrsL menLloned on Lhe lnLerneL by 8ernersLee ln laLe 199136 lL descrlbes 20 elemenLs comprlslng Lhe lnlLlal relaLlvely slmple deslgn of P1ML LxcepL for Lhe hyperllnk Lag Lhese were sLrongly lnfluenced by SCMLguld an ln house SCML based documenLaLlon formaL aL CL8n 1hlrLeen of Lhese elemenLs sLlll exlsL ln P1ML 47 PyperLexL markup language ls a markup language LhaL web browsers use Lo lnLerpreL and compose LexL lmages and oLher maLerlal lnLo vlsual or audlble web pages uefaulL characLerlsLlcs for every lLem of P1ML markup are deflned ln Lhe browser and Lhese characLerlsLlcs can be alLered or enhanced by Lhe web page deslgners addlLlonal use of CSS Many of Lhe LexL elemenLs are found ln Lhe 1988 lSC Lechnlcal reporL 18 9337 1echnlques for uslng SCML whlch ln Lurn covers Lhe feaLures of early LexL formaLLlng languages such as LhaL used by Lhe 8unCll command developed ln Lhe early 1960s for Lhe C1SS (CompaLlble 1lmeSharlng SysLem) operaLlng sysLem Lhese formaLLlng commands were derlved from Lhe commands used by LypeseLLers Lo manually formaL documenLs Powever Lhe SCML concepL of generallzed markup ls based on elemenLs (nesLed annoLaLed ranges wlLh aLLrlbuLes) raLher Lhan merely prlnL effecLs wlLh also Lhe separaLlon of sLrucLure and processlng P1ML has been progresslvely moved ln Lhls dlrecLlon wlLh CSS 8ernersLee consldered P1ML Lo be an appllcaLlon of SCML lL was formally deflned as such by Lhe lnLerneL Lnglneerlng 1ask lorce (lL1l) wlLh Lhe mld1993 publlcaLlon of Lhe flrsL proposal for an P1ML speclflcaLlon PyperLexL Markup Language (P1ML) lnLerneLurafL by 8ernersLee and uan Connolly whlch lncluded an SCML uocumenL 1ype ueflnlLlon Lo deflne Lhe grammar8 1he drafL explred afLer slx monLhs buL was noLable for lLs acknowledgemenL of Lhe nCSA Mosalc browsers cusLom Lag for embeddlng lnllne lmages reflecLlng Lhe lL1ls phllosophy of baslng sLandards on successful proLoLypes9 Slmllarly uave 8aggeLLs compeLlng lnLerneLurafL P1ML+ (PyperLexL Markup lormaL) from laLe 1993 suggesLed sLandardlzlng alreadylmplemenLed feaLures llke Lables and flllouL forms10 AfLer Lhe P1ML and P1ML+ drafLs explred ln early 1994 Lhe lL1l creaLed an P1ML Worklng Croup whlch ln 1993 compleLed P1ML 20 Lhe flrsL P1ML speclflcaLlon lnLended Lo be LreaLed as a sLandard agalnsL whlch fuLure lmplemenLaLlons should be based9 ubllshed as 8equesL for CommenLs 1866 P1ML 20 lncluded ldeas from Lhe P1ML and P1ML+ drafLs11 1he 20 deslgnaLlon was lnLended Lo dlsLlngulsh Lhe new edlLlon from prevlous drafLs12 lurLher developmenL under Lhe ausplces of Lhe lL1l was sLalled by compeLlng lnLeresLs Slnce 1996 Lhe P1ML speclflcaLlons have been malnLalned wlLh lnpuL from commerclal sofLware vendors by Lhe World Wlde Web ConsorLlum (W3C)13 Powever ln 2000 P1ML also became an lnLernaLlonal sLandard (lSC/lLC 134432000) 1he lasL P1ML speclflcaLlon publlshed by Lhe W3C ls Lhe P1ML 401 8ecommendaLlon publlshed ln laLe 1999 lLs lssues and errors were lasL acknowledged by erraLa publlshed ln 2001 edlLverslon hlsLory of Lhe sLandard P1ML P1ML and P1ML3 uynamlc P1ML xP1ML xP1ML 8aslc xP1ML Moblle roflle and CP1ML Canvas elemenL CharacLer encodlngs uocumenL Cb[ecL Model lonL famlly P1ML edlLor P1ML elemenL P1ML lrames P1ML3 vldeo P1ML scrlpLlng Web browser englne Culrks mode SLyle sheeLs unlcode and P1ML W3C and WPA1WC Web colors Web SLorage Comparlson of documenL markup languages web browsers layouL englnes for P1ML P1ML3 P1ML3 Canvas P1ML3 Medla nonsLandard P1ML xP1ML (11) 1hls box vlew Lalk edlL edlLP1ML verslon Llmellne november 24 1993 P1ML 20 was publlshed as lL1l 8lC 1866 SupplemenLal 8lCs added capablllLles november 23 1993 8lC 1867 (formbased flle upload) May 1996 8lC 1942 (Lables) AugusL 1996 8lC 1980 (cllenLslde lmage maps) !anuary 1997 8lC 2070 (lnLernaLlonallzaLlon) ln !une 2000 all of Lhese were declared obsoleLe/hlsLorlc by 8lC 2834 !anuary 1997 P1ML 3214 was publlshed as a W3C 8ecommendaLlon lL was Lhe flrsL verslon developed and sLandardlzed excluslvely by Lhe W3C as Lhe lL1l had closed lLs P1ML Worklng Croup ln SepLember 199613 P1ML 32 dropped maLh formulas enLlrely reconclled overlap among varlous proprleLary exLenslons and adopLed mosL of neLscapes vlsual markup Lags neLscapes bllnk elemenL and MlcrosofLs marquee elemenL were omlLLed due Lo a muLual agreemenL beLween Lhe Lwo companles13 A markup for maLhemaLlcal formulas slmllar Lo LhaL ln P1ML was noL sLandardlzed unLll 14 monLhs laLer ln MaLhML uecember 1997 P1ML 4016 was publlshed as a W3C 8ecommendaLlon lL offers Lhree varlaLlons SLrlcL ln whlch deprecaLed elemenLs are forbldden 1ranslLlonal ln whlch deprecaLed elemenLs are allowed lrameseL ln whlch mosLly only frame relaLed elemenLs are allowed lnlLlally codenamed Cougar17 P1ML 40 adopLed many browserspeclflc elemenL Lypes and aLLrlbuLes buL aL Lhe same Llme soughL Lo phase ouL neLscapes vlsual markup feaLures by marklng Lhem as deprecaLed ln favor of sLyle sheeLs P1ML 4 ls an SCML appllcaLlon conformlng Lo lSC 8879 SCML18 Aprll 1998 P1ML 4019 was relssued wlLh mlnor edlLs wlLhouL lncremenLlng Lhe verslon number uecember 1999 P1ML 40120 was publlshed as a W3C 8ecommendaLlon lL offers Lhe same Lhree varlaLlons as P1ML 40 and lLs lasL erraLa were publlshed May 12 2001 May 2000 lSC/lLC 1344320002122 (lSC P1ML based on P1ML 401 SLrlcL) was publlshed as an lSC/lLC lnLernaLlonal sLandard ln Lhe lSC Lhls sLandard falls ln Lhe domaln of Lhe lSC/lLC !1C1/SC34 (lSC/lLC !olnL 1echnlcal CommlLLee 1 SubcommlLLee 34 uocumenL descrlpLlon and processlng languages)21 As of mld2008 P1ML 401 and lSC/lLC 134432000 are Lhe mosL recenL verslons of P1ML uevelopmenL of Lhe parallel xMLbased language xP1ML occupled Lhe W3Cs P1ML Worklng Croup Lhrough Lhe early and mld2000s edlLP1ML drafL verslon Llmellne
Logo of P1ML 3 CcLober 1991 P1ML 1ags3 an lnformal CL8n documenL llsLlng Lwelve P1ML Lags was flrsL menLloned ln publlc !une 1992 llrsL lnformal drafL of Lhe P1ML u1u23 wlLh seven242326 subsequenL revlslons (!uly 13 AugusL 6 AugusL 18 november 17 november 19 november 20 november 22) november 1992 P1ML u1u 11 (Lhe flrsL wlLh a verslon number based on 8CS revlslons whlch sLarL wlLh 11 raLher Lhan 10) an lnformal drafL26 !une 1993 PyperLexL Markup Language27 was publlshed by Lhe lL1l lll8 Worklng Croup as an lnLerneLurafL (a rough proposal for a sLandard) lL was replaced by a second verslon28 one monLh laLer followed by slx furLher drafLs publlshed by lL1l lLself29 LhaL flnally led Lo P1ML 20 ln 8lC1866 november 1993 P1ML+ was publlshed by Lhe lL1l as an lnLerneLurafL and was a compeLlng proposal Lo Lhe PyperLexL Markup Language drafL lL explred ln May 1994 Aprll 1993 (auLhored March 1993) P1ML 3030 was proposed as a sLandard Lo Lhe lL1l buL Lhe proposal explred flve monLhs laLer wlLhouL furLher acLlon lL lncluded many of Lhe capablllLles LhaL were ln 8aggeLLs P1ML+ proposal such as supporL for Lables LexL flow around flgures and Lhe dlsplay of complex maLhemaLlcal formulas31 W3C began developmenL of lLs own Arena browser as a LesL bed for P1ML 3 and Cascadlng SLyle SheeLs323334 buL P1ML 30 dld noL succeed for several reasons 1he drafL was consldered very large aL 130 pages and Lhe pace of browser developmenL as well as Lhe number of lnLeresLed parLles had ouLsLrlpped Lhe resources of Lhe lL1l13 8rowser vendors lncludlng MlcrosofL and neLscape aL Lhe Llme chose Lo lmplemenL dlfferenL subseLs of P1ML 3s drafL feaLures as well as Lo lnLroduce Lhelr own exLenslons Lo lL13 (See 8rowser wars) 1hese lncluded exLenslons Lo conLrol sLyllsLlc aspecLs of documenLs conLrary Lo Lhe bellef of Lhe academlc englneerlng communlLy LhaL such Lhlngs as LexL color background LexLure fonL slze and fonL face were deflnlLely ouLslde Lhe scope of a language when Lhelr only lnLenL was Lo speclfy how a documenL would be organlzed13 uave 8aggeLL who has been a W3C lellow for many years has commenLed for example 1o a cerLaln exLenL MlcrosofL bullL lLs buslness on Lhe Web by exLendlng P1ML feaLures13 !anuary 2008 P1ML3 was publlshed as a Worklng urafL (llnk) by Lhe W3C33 AlLhough lLs synLax closely resembles LhaL of SCML P1ML3 has abandoned any aLLempL Lo be an SCML appllcaLlon and has expllclLly deflned lLs own hLml serlallzaLlon ln addlLlon Lo an alLernaLlve xML based xP1ML3 serlallzaLlon36 edlLxP1ML verslons Maln arLlcle xP1ML xP1ML ls a separaLe language LhaL began as a reformulaLlon of P1ML 401 uslng xML 10 lL conLlnues Lo be developed xP1ML 1037 publlshed !anuary 26 2000 as a W3C 8ecommendaLlon laLer revlsed and republlshed AugusL 1 2002 lL offers Lhe same Lhree varlaLlons as P1ML 40 and 401 reformulaLed ln xML wlLh mlnor resLrlcLlons xP1ML 1138 publlshed May 31 2001 as a W3C 8ecommendaLlon lL ls based on xP1ML 10 SLrlcL buL lncludes mlnor changes can be cusLomlzed ls reformulaLed uslng modules from ModularlzaLlon of xP1ML whlch was publlshed Aprll 10 2001 as a W3C 8ecommendaLlon xP1ML 203940 1here ls no xP1ML 20 sLandard xP1ML 20 ls only a drafL documenL and lL ls lnapproprlaLe Lo clLe Lhls documenL as oLher Lhan work ln progress xP1ML 20 ls lncompaLlble wlLh xP1ML 1x and Lherefore would be more accuraLely characLerlzed as an xP1MLlnsplred new language Lhan an updaLe Lo xP1ML 1x xP1ML3 whlch ls an updaLe Lo xP1ML 1x ls belng deflned alongslde P1ML3 ln Lhe P1ML3 drafL41 edlLMarkup
P1ML markup conslsLs of several key componenLs lncludlng elemenLs (and Lhelr aLLrlbuLes) characLer based daLa Lypes characLer references and enLlLy references AnoLher lmporLanL componenL ls Lhe documenL Lype declaraLlon whlch Lrlggers sLandards mode renderlng 1he Pello world program a common compuLer program employed for comparlng programmlng languages scrlpLlng languages and markup languages ls made of 9 llnes of code alLhough ln P1ML newllnes are opLlonal !uCC1?L hLml hLml head LlLlePello P1ML/LlLle /head body pPello World!/p /body /hLml (1he LexL beLween hLml and /hLml descrlbes Lhe web page and Lhe LexL beLween body and /body ls Lhe vlslble page conLenL 1he markup LexL LlLlePello P1ML/LlLle deflnes Lhe browser Lab LlLle) 1hls uocumenL 1ype ueclaraLlon ls for P1ML3 lf Lhe !docLype hLml declaraLlon ls noL lncluded varlous browsers wlll reverL Lo qulrks mode for renderlng42 edlLLlemenLs Maln arLlcle P1ML elemenL P1ML documenLs are composed enLlrely of P1ML elemenLs LhaL ln Lhelr mosL general form have Lhree componenLs a palr of Lags a sLarL Lag and end Lag some aLLrlbuLes wlLhln Lhe sLarL Lag and flnally any LexLual and graphlcal conLenL beLween Lhe sLarL and end Lags perhaps lncludlng oLher nesLed elemenLs 1he P1ML elemenL ls everyLhlng beLween and lncludlng Lhe sLarL and end Lags Lach Lag ls enclosed ln angle brackeLs 1he general form of an P1ML elemenL ls Lherefore Lag aLLrlbuLe1value1 aLLrlbuLe2value2conLenL/Lag Some P1ML elemenLs are deflned as empLy elemenLs and Lake Lhe form Lag aLLrlbuLe1value1 aLLrlbuLe2value2 LmpLy elemenLs may enclose no conLenL 1he name of an P1ML elemenL ls Lhe name used ln Lhe Lags noLe LhaL Lhe end Lags name ls preceded by a slash characLer / and LhaL ln empLy elemenLs Lhe end Lag ls nelLher requlred nor allowed lf aLLrlbuLes are noL menLloned defaulL values are used ln each case edlLLlemenL examples Peader of Lhe P1ML documenLhead/head usually Lhe LlLle should be lncluded ln Lhe head for example head LlLle1he LlLle/LlLle /head Peadlngs P1ML headlngs are deflned wlLh Lhe h1 Lo h6 Lags h1Peadlng1/h1 h2Peadlng2/h2 h3Peadlng3/h3 h4Peadlng4/h4 h3Peadlng3/h3 h6Peadlng6/h6 aragraphs paragraph 1/p paragraph 2/p Llne breaksbr 1he dlfference beLween br and p ls LhaL br breaks a llne wlLhouL alLerlng Lhe semanLlc sLrucLure of Lhe page whereas p secLlons Lhe page lnLo paragraphs noLe also LhaL br ls an empLy elemenL ln LhaL whlle lL may have aLLrlbuLes lL can Lake no conLenL and lL may noL have an end Lag p1hls br ls a paragraph br wlLh br llne breaks/p CommenLs ! 1hls ls a commenL CommenLs can help undersLandlng of Lhe markup and do noL dlsplay ln Lhe webpage 1here are several Lypes of markup elemenLs used ln P1ML SLrucLural markup descrlbes Lhe purpose of LexL lor example h2Colf/h2 esLabllshes Colf as a secondlevel headlng SLrucLural markup does noL denoLe any speclflc renderlng buL mosL web browsers have defaulL sLyles for elemenL formaLLlng ConLenL may be furLher sLyled uslng Cascadlng SLyle SheeLs (CSS) resenLaLlonal markup descrlbes Lhe appearance of Lhe LexL regardless of lLs purpose lor example bboldface/b lndlcaLes LhaL vlsual ouLpuL devlces should render boldface ln bold LexL buL glves llLLle lndlcaLlon whaL devlces LhaL are unable Lo do Lhls (such as aural devlces LhaL read Lhe LexL aloud) should do ln Lhe case of boLh bbold/b and llLallc/l Lhere are oLher elemenLs LhaL may have equlvalenL vlsual renderlngs buL whlch are more semanLlc ln naLure such as sLrongsLrong LexL/sLrong and ememphaslsed LexL/em respecLlvely lL ls easler Lo see how an aural user agenL should lnLerpreL Lhe laLLer Lwo elemenLs Powever Lhey are noL equlvalenL Lo Lhelr presenLaLlonal counLerparLs lL would be undeslrable for a screenreader Lo emphaslze Lhe name of a book for lnsLance buL on a screen such a name would be lLallclzed MosL presenLaLlonal markup elemenLs have become deprecaLed under Lhe P1ML 40 speclflcaLlon ln favor of uslng CSS for sLyllng PyperLexL markup makes parLs of a documenL lnLo llnks Lo oLher documenLs An anchor elemenL creaLes a hyperllnk ln Lhe documenL and lLs href aLLrlbuLe seLs Lhe llnks LargeL u8L lor example Lhe P1ML markup a hrefhLLp//enwlklpedlaorg/Wlklpedla/a wlll render Lhe word Wlklpedla as a hyperllnk 1o render an lmage as a hyperllnk an lmg elemenL ls lnserLed as conLenL lnLo Lhe a elemenL Llke br lmg ls an empLy elemenL wlLh aLLrlbuLes buL no conLenL or closlng Lag a hrefhLLp//exampleorglmg srclmageglf alLdescrlpLlve LexL wldLh30 helghL30 border0/a edlLALLrlbuLes MosL of Lhe aLLrlbuLes of an elemenL are namevalue palrs separaLed by and wrlLLen wlLhln Lhe sLarL Lag of an elemenL afLer Lhe elemenLs name 1he value may be enclosed ln slngle or double quoLes alLhough values conslsLlng of cerLaln characLers can be lefL unquoLed ln P1ML (buL noL xP1ML)4344 Leavlng aLLrlbuLe values unquoLed ls consldered unsafe43 ln conLrasL wlLh namevalue palr aLLrlbuLes Lhere are some aLLrlbuLes LhaL affecL Lhe elemenL slmply by Lhelr presence ln Lhe sLarL Lag of Lhe elemenL3 llke Lhe lsmap aLLrlbuLe for Lhe lmg elemenL46 1here are several common aLLrlbuLes LhaL may appear ln many elemenLs 1he ld aLLrlbuLe provldes a documenLwlde unlque ldenLlfler for an elemenL 1hls ls used Lo ldenLlfy Lhe elemenL so LhaL sLylesheeLs can alLer lLs presenLaLlonal properLles and scrlpLs may alLer anlmaLe or deleLe lLs conLenLs or presenLaLlon Appended Lo Lhe u8L of Lhe page lL provldes a globally unlque ldenLlfler for Lhe elemenL Lyplcally a subsecLlon of Lhe page lor example Lhe lu ALLrlbuLes ln hLLp//enwlklpedlaorg/wlkl/P1ML#ALLrlbuLes 1he class aLLrlbuLe provldes a way of classlfylng slmllar elemenLs 1hls can be used for semanLlc or presenLaLlon purposes lor example an P1ML documenL mlghL semanLlcally use Lhe deslgnaLlon classnoLaLlon Lo lndlcaLe LhaL all elemenLs wlLh Lhls class value are subordlnaLe Lo Lhe maln LexL of Lhe documenL ln presenLaLlon such elemenLs mlghL be gaLhered LogeLher and presenLed as fooLnoLes on a page lnsLead of appearlng ln Lhe place where Lhey occur ln Lhe P1ML source Class aLLrlbuLes are used semanLlcally ln mlcroformaLs MulLlple class values may be speclfled for example classnoLaLlon lmporLanL puLs Lhe elemenL lnLo boLh Lhe noLaLlon and Lhe lmporLanL classes An auLhor may use Lhe sLyle aLLrlbuLe Lo asslgn presenLaLlonal properLles Lo a parLlcular elemenL lL ls consldered beLLer pracLlce Lo use an elemenLs ld or class aLLrlbuLes Lo selecL Lhe elemenL from wlLhln a sLylesheeL Lhough someLlmes Lhls can be Loo cumbersome for a slmple speclflc or ad hoc sLyllng 1he LlLle aLLrlbuLe ls used Lo aLLach subLexLual explanaLlon Lo an elemenL ln mosL browsers Lhls aLLrlbuLe ls dlsplayed as a LoolLlp 1he lang aLLrlbuLe ldenLlfles Lhe naLural language of Lhe elemenLs conLenLs whlch may be dlfferenL from LhaL of Lhe resL of Lhe documenL lor example ln an Lngllshlanguage documenL pCh well span langfrcesL la vle/span as Lhey say ln lrance/p 1he abbrevlaLlon elemenL abbr can be used Lo demonsLraLe some of Lhese aLLrlbuLes abbr ldanld class[argon sLylecolorpurple LlLlePyperLexL Markup LanguageP1ML/abbr 1hls example dlsplays as P1ML ln mosL browsers polnLlng Lhe cursor aL Lhe abbrevlaLlon should dlsplay Lhe LlLle LexL PyperLexL Markup Language MosL elemenLs also Lake Lhe languagerelaLed aLLrlbuLe dlr Lo speclfy LexL dlrecLlon such as wlLh rLl for rlghLLolefL LexL ln for example Arablc erslan or Pebrew47 edlLCharacLer and enLlLy references See also LlsL of xML and P1ML characLer enLlLy references and unlcode and P1ML As of verslon 40 P1ML deflnes a seL of 232 characLer enLlLy references and a seL of 1114030 numerlc characLer references boLh of whlch allow lndlvldual characLers Lo be wrlLLen vla slmple markup raLher Lhan llLerally A llLeral characLer and lLs markup counLerparL are consldered equlvalenL and are rendered ldenLlcally 1he ablllLy Lo escape characLers ln Lhls way allows for Lhe characLers and (when wrlLLen as lL and amp respecLlvely) Lo be lnLerpreLed as characLer daLa raLher Lhan markup lor example a llLeral normally lndlcaLes Lhe sLarL of a Lag and normally lndlcaLes Lhe sLarL of a characLer enLlLy reference or numerlc characLer reference wrlLlng lL as amp or #x26 or #38 allows Lo be lncluded ln Lhe conLenL of an elemenL or ln Lhe value of an aLLrlbuLe 1he doublequoLe characLer () when noL used Lo quoLe an aLLrlbuLe value musL also be escaped as quoL or #x22 or #34 when lL appears wlLhln Lhe aLLrlbuLe value lLself LqulvalenLly Lhe slnglequoLe characLer () when used Lo quoLe an aLLrlbuLe value musL also be escaped as #x27 or #39 (noL as apos excepL ln xP1ML documenLs48) when lL appears wlLhln Lhe aLLrlbuLe value lLself lf documenL auLhors overlook Lhe need Lo escape such characLers some browsers can be very forglvlng and Lry Lo use conLexL Lo guess Lhelr lnLenL 1he resulL ls sLlll lnvalld markup whlch makes Lhe documenL less accesslble Lo oLher browsers and Lo oLher user agenLs LhaL may Lry Lo parse Lhe documenL for search and lndexlng purposes for example Lscaplng also allows for characLers LhaL are noL easlly Lyped or LhaL are noL avallable ln Lhe documenLs characLer encodlng Lo be represenLed wlLhln elemenL and aLLrlbuLe conLenL lor example Lhe acuLe accenLed e (e) a characLer Lyplcally found only on WesLern Luropean keyboards can be wrlLLen ln any P1ML documenL as Lhe enLlLy reference eacuLe or as Lhe numerlc references #233 or #xL9 uslng characLers LhaL are avallable on all keyboards and are supporLed ln all characLer encodlngs unlcode characLer encodlngs such as u1l8 are compaLlble wlLh all modern browsers and allow dlrecL access Lo almosL all Lhe characLers of Lhe worlds wrlLlng sysLems49 edlLuaLa Lypes P1ML deflnes several daLa Lypes for elemenL conLenL such as scrlpL daLa and sLylesheeL daLa and a pleLhora of Lypes for aLLrlbuLe values lncludlng lus names u8ls numbers unlLs of lengLh languages medla descrlpLors colors characLer encodlngs daLes and Llmes and so on All of Lhese daLa Lypes are speclallzaLlons of characLer daLa edlLuocumenL Lype declaraLlon P1ML documenLs are requlred Lo sLarL wlLh a uocumenL 1ype ueclaraLlon (lnformally a docLype) ln browsers Lhe docLype helps Lo deflne Lhe renderlng modeparLlcularly wheLher Lo use qulrks mode 1he orlglnal purpose of Lhe docLype was Lo enable parslng and valldaLlon of P1ML documenLs by SCML Lools based on Lhe uocumenL 1ype ueflnlLlon (u1u) 1he u1u Lo whlch Lhe uCC1?L refers conLalns a machlnereadable grammar speclfylng Lhe permlLLed and prohlblLed conLenL for a documenL conformlng Lo such a u1u 8rowsers on Lhe oLher hand do noL lmplemenL P1ML as an appllcaLlon of SCML and by consequence do noL read Lhe u1u P1ML3 does noL deflne a u1u because of Lhe Lechnologys lnherenL llmlLaLlons so ln P1ML3 Lhe docLype declaraLlon !docLype hLml does noL refer Lo a u1u An example of an P1ML 4 docLype ls !uCC1?L P1ML u8LlC //W3C//u1u P1ML 401//Ln hLLp//wwww3org/18/hLml4/sLrlcLdLd 1hls declaraLlon references Lhe u1u for Lhe sLrlcL verslon of P1ML 401 SCMLbased valldaLors read Lhe u1u ln order Lo properly parse Lhe documenL and Lo perform valldaLlon ln modern browsers a valld docLype acLlvaLes sLandards mode as opposed Lo qulrks mode ln addlLlon P1ML 401 provldes 1ranslLlonal and lrameseL u1us as explalned below edlLSemanLlc P1ML
Maln arLlcle SemanLlc P1ML SemanLlc P1ML ls a way of wrlLlng P1ML LhaL emphaslzes Lhe meanlng of Lhe encoded lnformaLlon over lLs presenLaLlon (look) P1ML has lncluded semanLlc markup from lLs lncepLlon30 buL has also lncluded presenLaLlonal markup such as fonL l and cenLer Lags 1here are also Lhe semanLlcally neuLral span and dlv Lags Slnce Lhe laLe 1990s when Cascadlng SLyle SheeLs were beglnnlng Lo work ln mosL browsers web auLhors have been encouraged Lo avold Lhe use of presenLaLlonal P1ML markup wlLh a vlew Lo Lhe separaLlon of presenLaLlon and conLenL31 ln a 2001 dlscusslon of Lhe SemanLlc Web 1lm 8ernersLee and oLhers gave examples of ways ln whlch lnLelllgenL sofLware agenLs may one day auLomaLlcally Lrawl Lhe Web and flnd fllLer and correlaLe prevlously unrelaLed publlshed facLs for Lhe beneflL of human users32 Such agenLs are noL commonplace even now buL some of Lhe ldeas of Web 20 mashups and prlce comparlson webslLes may be comlng close 1he maln dlfference beLween Lhese web appllcaLlon hybrlds and 8ernersLees semanLlc agenLs lles ln Lhe facL LhaL Lhe currenL aggregaLlon and hybrldlsaLlon of lnformaLlon ls usually deslgned ln by web developers who already know Lhe web locaLlons and Lhe Al semanLlcs of Lhe speclflc daLa Lhey wlsh Lo mash compare and comblne An lmporLanL Lype of web agenL LhaL does Lrawl and read web pages auLomaLlcally wlLhouL prlor knowledge of whaL lL mlghL flnd ls Lhe Web crawler or searchenglne splder 1hese sofLware agenLs are dependenL on Lhe semanLlc clarlLy of web pages Lhey flnd as Lhey use varlous Lechnlques and algorlLhms Lo read and lndex mllllons of web pages a day and provlde web users wlLh search faclllLles wlLhouL whlch Lhe World Wlde Web would be only a fracLlon of lLs currenL usefulness ln order for searchenglne splders Lo be able Lo raLe Lhe slgnlflcance of pleces of LexL Lhey flnd ln P1ML documenLs and also for Lhose creaLlng mashups and oLher hybrlds as well as for more auLomaLed agenLs as Lhey are developed Lhe semanLlc sLrucLures LhaL exlsL ln P1ML need Lo be wldely and unlformly applled Lo brlng ouL Lhe meanlng of publlshed LexL33 resenLaLlonal markup Lags are deprecaLed ln currenL P1ML and xP1ML recommendaLlons and are lllegal ln P1ML3 Cood semanLlc P1ML also lmproves Lhe accesslblllLy of web documenLs (see also Web ConLenL AccesslblllLy Culdellnes) lor example when a screen reader or audlo browser can correcLly ascerLaln Lhe sLrucLure of a documenL lL wlll noL wasLe Lhe vlsually lmpalred users Llme by readlng ouL repeaLed or lrrelevanL lnformaLlon when lL has been marked up correcLly edlLuellvery
P1ML documenLs can be dellvered by Lhe same means as any oLher compuLer flle Powever Lhey are mosL ofLen dellvered elLher by P11 from a web server or by emall edlLP11 Maln arLlcle PyperLexL 1ransfer roLocol 1he World Wlde Web ls composed prlmarlly of P1ML documenLs LransmlLLed from web servers Lo web browsers uslng Lhe PyperLexL 1ransfer roLocol (P11) Powever P11 ls used Lo serve lmages sound and oLher conLenL ln addlLlon Lo P1ML 1o allow Lhe Web browser Lo know how Lo handle each documenL lL recelves oLher lnformaLlon ls LransmlLLed along wlLh Lhe documenL 1hls meLa daLa usually lncludes Lhe MlML Lype (eg LexL/hLml or appllcaLlon/xhLml+xml) and Lhe characLer encodlng (see CharacLer encodlng ln P1ML) ln modern browsers Lhe MlML Lype LhaL ls senL wlLh Lhe P1ML documenL may affecL how Lhe documenL ls lnlLlally lnLerpreLed A documenL senL wlLh Lhe xP1ML MlML Lype ls expecLed Lo be well formed xML synLax errors may cause Lhe browser Lo fall Lo render lL 1he same documenL senL wlLh Lhe P1ML MlML Lype mlghL be dlsplayed successfully slnce some browsers are more lenlenL wlLh P1ML 1he W3C recommendaLlons sLaLe LhaL xP1ML 10 documenLs LhaL follow guldellnes seL forLh ln Lhe recommendaLlons Appendlx C may be labeled wlLh elLher MlML 1ype34 1he currenL xP1ML 11 Worklng urafL also sLaLes LhaL xP1ML 11 documenLs should33 be labeled wlLh elLher MlML Lype36 edlLP1ML emall Maln arLlcle P1ML emall MosL graphlcal emall cllenLs allow Lhe use of a subseL of P1ML (ofLen llldeflned) Lo provlde formaLLlng and semanLlc markup noL avallable wlLh plaln LexL 1hls may lnclude Lypographlc lnformaLlon llke coloured headlngs emphaslzed and quoLed LexL lnllne lmages and dlagrams Many such cllenLs lnclude boLh a Cul edlLor for composlng P1ML emall messages and a renderlng englne for dlsplaylng Lhem use of P1ML ln emall ls conLroverslal because of compaLlblllLy lssues because lL can help dlsgulse phlshlng aLLacks because lL can confuse spam fllLers and because Lhe message slze ls larger Lhan plaln LexL edlLnamlng convenLlons 1he mosL common fllename exLenslon for flles conLalnlng P1ML ls hLml A common abbrevlaLlon of Lhls ls hLm whlch orlglnaLed because some early operaLlng sysLems and flle sysLems such as uCS and lA1 llmlLed flle exLenslons Lo Lhree leLLers edlLP1ML AppllcaLlon Maln arLlcle P1ML AppllcaLlon An P1ML AppllcaLlon (P1A flle exLenslon hLa) ls a MlcrosofL Wlndows appllcaLlon LhaL uses P1ML and uynamlc P1ML ln a browser Lo provlde Lhe appllcaLlons graphlcal lnLerface A regular P1ML flle ls conflned Lo Lhe securlLy model of Lhe web browser communlcaLlng only Lo web servers and manlpulaLlng only webpage ob[ecLs and slLe cookles An P1A runs as a fully LrusLed appllcaLlon and Lherefore has more prlvlleges llke creaLlon/edlLlng/removal of flles and Wlndows 8eglsLry enLrles 8ecause Lhey operaLe ouLslde Lhe browsers securlLy model P1As cannoL be execuLed vla P11 buL musL be downloaded ([usL llke an LxL flle) and execuLed from local flle sysLem edlLCurrenL varlaLlons
P1ML ls preclsely whaL we were Lrylng Lo 8LvLn1 everbreaklng llnks llnks golng ouLward only quoLes you canL follow Lo Lhelr orlglns no verslon managemenL no rlghLs managemenL 1ed nelson37 Slnce lLs lncepLlon P1ML and lLs assoclaLed proLocols galned accepLance relaLlvely qulckly Powever no clear sLandards exlsLed ln Lhe early years of Lhe language 1hough lLs creaLors orlglnally concelved of P1ML as a semanLlc language devold of presenLaLlon deLalls38 pracLlcal uses pushed many presenLaLlonal elemenLs and aLLrlbuLes lnLo Lhe language drlven largely by Lhe varlous browser vendors 1he laLesL sLandards surroundlng P1ML reflecL efforLs Lo overcome Lhe someLlmes chaoLlc developmenL of Lhe language39 and Lo creaLe a raLlonal foundaLlon for bulldlng boLh meanlngful and wellpresenLed documenLs 1o reLurn P1ML Lo lLs role as a semanLlc language Lhe W3C has developed sLyle languages such as CSS and xSL Lo shoulder Lhe burden of presenLaLlon ln con[uncLlon Lhe P1ML speclflcaLlon has slowly relned ln Lhe presenLaLlonal elemenLs 1here are Lwo axes dlfferenLlaLlng varlous varlaLlons of P1ML as currenLly speclfled SCMLbased P1ML versus xMLbased P1ML (referred Lo as xP1ML) on one axls and sLrlcL versus LranslLlonal (loose) versus frameseL on Lhe oLher axls edlLSCMLbased versus xMLbased P1ML Cne dlfference ln Lhe laLesL P1ML speclflcaLlons lles ln Lhe dlsLlncLlon beLween Lhe SCMLbased speclflcaLlon and Lhe xMLbased speclflcaLlon 1he xMLbased speclflcaLlon ls usually called xP1ML Lo dlsLlngulsh lL clearly from Lhe more LradlLlonal deflnlLlon Powever Lhe rooL elemenL name conLlnues Lo be hLml even ln Lhe xP1MLspeclfled P1ML 1he W3C lnLended xP1ML 10 Lo be ldenLlcal Lo P1ML 401 excepL where llmlLaLlons of xML over Lhe more complex SCML requlre workarounds 8ecause xP1ML and P1ML are closely relaLed Lhey are someLlmes documenLed ln parallel ln such clrcumsLances some auLhors conflaLe Lhe Lwo names as (x)P1ML or x(P1ML) Llke P1ML 401 xP1ML 10 has Lhree subspeclflcaLlons sLrlcL LranslLlonal and frameseL Aslde from Lhe dlfferenL openlng declaraLlons for a documenL Lhe dlfferences beLween an P1ML 401 and xP1ML 10 documenLln each of Lhe correspondlng u1usare largely synLacLlc 1he underlylng synLax of P1ML allows many shorLcuLs LhaL xP1ML does noL such as elemenLs wlLh opLlonal openlng or closlng Lags and even LM1? elemenLs whlch musL noL have an end Lag 8y conLrasL xP1ML requlres all elemenLs Lo have an openlng Lag and a closlng Lag xP1ML however also lnLroduces a new shorLcuL an xP1ML Lag may be opened and closed wlLhln Lhe same Lag by lncludlng a slash before Lhe end of Lhe Lag llke Lhls br/ 1he lnLroducLlon of Lhls shorLhand whlch ls noL used ln Lhe SCML declaraLlon for P1ML 401 may confuse earller sofLware unfamlllar wlLh Lhls new convenLlon A flx for Lhls ls Lo lnclude a space before closlng Lhe Lag as such br /60 1o undersLand Lhe subLle dlfferences beLween P1ML and xP1ML conslder Lhe LransformaLlon of a valld and wellformed xP1ML 10 documenL LhaL adheres Lo Appendlx C (see below) lnLo a valld P1ML 401 documenL 1o make Lhls LranslaLlon requlres Lhe followlng sLeps 1he language for an elemenL should be speclfled wlLh a lang aLLrlbuLe raLher Lhan Lhe xP1ML xmllang aLLrlbuLe xP1ML uses xMLs bullL ln languagedeflnlng funcLlonallLy aLLrlbuLe 8emove Lhe xML namespace (xmlnsu8l) P1ML has no faclllLles for namespaces Change Lhe documenL Lype declaraLlon from xP1ML 10 Lo P1ML 401 (see u1u secLlon for furLher explanaLlon) lf presenL remove Lhe xML declaraLlon (1yplcally Lhls ls ?xml verslon10 encodlnguLf8?) Lnsure LhaL Lhe documenLs MlML Lype ls seL Lo LexL/hLml lor boLh P1ML and xP1ML Lhls comes from Lhe P11 ConLenL1ype header senL by Lhe server Change Lhe xML empLyelemenL synLax Lo an P1ML sLyle empLy elemenL (br/ Lo br) 1hose are Lhe maln changes necessary Lo LranslaLe a documenL from xP1ML 10 Lo P1ML 401 1o LranslaLe from P1ML Lo xP1ML would also requlre Lhe addlLlon of any omlLLed openlng or closlng Lags WheLher codlng ln P1ML or xP1ML lL may [usL be besL Lo always lnclude Lhe opLlonal Lags wlLhln an P1ML documenL raLher Lhan rememberlng whlch Lags can be omlLLed A wellformed xP1ML documenL adheres Lo all Lhe synLax requlremenLs of xML A valld documenL adheres Lo Lhe conLenL speclflcaLlon for xP1ML whlch descrlbes Lhe documenL sLrucLure 1he W3C recommends several convenLlons Lo ensure an easy mlgraLlon beLween P1ML and xP1ML (see P1ML CompaLlblllLy Culdellnes) 1he followlng sLeps can be applled Lo xP1ML 10 documenLs only lnclude boLh xmllang and lang aLLrlbuLes on any elemenLs asslgnlng language use Lhe empLyelemenL synLax only for elemenLs speclfled as empLy ln P1ML lnclude an exLra space ln empLyelemenL Lags for example br / lnsLead of br/ lnclude expllclL close Lags for elemenLs LhaL permlL conLenL buL are lefL empLy (for example dlv/dlv noL dlv /) CmlL Lhe xML declaraLlon 8y carefully followlng Lhe W3Cs compaLlblllLy guldellnes a user agenL should be able Lo lnLerpreL Lhe documenL equally as P1ML or xP1ML lor documenLs LhaL are xP1ML 10 and have been made compaLlble ln Lhls way Lhe W3C permlLs Lhem Lo be served elLher as P1ML (wlLh a LexL/hLml MlML Lype) or as xP1ML (wlLh an appllcaLlon/xhLml+xml or appllcaLlon/xml MlML Lype) When dellvered as xP1ML browsers should use an xML parser whlch adheres sLrlcLly Lo Lhe xML speclflcaLlons for parslng Lhe documenLs conLenLs edlL1ranslLlonal versus sLrlcL P1ML 4 deflned Lhree dlfferenL verslons of Lhe language SLrlcL 1ranslLlonal (once called Loose) and lrameseL 1he SLrlcL verslon ls lnLended for new documenLs and ls consldered besL pracLlce whlle Lhe 1ranslLlonal and lrameseL verslons were developed Lo make lL easler Lo LranslLlon documenLs LhaL conformed Lo older P1ML speclflcaLlon or dldnL conform Lo any speclflcaLlon Lo a verslon of P1ML 4 1he 1ranslLlonal and lrameseL verslons allow for presenLaLlonal markup whlch ls omlLLed ln Lhe SLrlcL verslon lnsLead cascadlng sLyle sheeLs are encouraged Lo lmprove Lhe presenLaLlon of P1ML documenLs 8ecause xP1ML 1 only deflnes an xML synLax for Lhe language deflned by P1ML 4 Lhe same dlfferences apply Lo xP1ML 1 as well 1he 1ranslLlonal verslon allows Lhe followlng parLs of Lhe vocabulary whlch are noL lncluded ln Lhe SLrlcL verslon A looser conLenL model lnllne elemenLs and plaln LexL are allowed dlrecLly ln body blockquoLe form noscrlpL and noframes resenLaLlon relaLed elemenLs underllne (u)(ueprecaLed can confuse a vlslLor wlLh a hyperllnk) sLrlkeLhrough (s) cenLer(ueprecaLed use CSS lnsLead) fonL(ueprecaLed use CSS lnsLead) basefonL(ueprecaLed use CSS lnsLead) resenLaLlon relaLed aLLrlbuLes background(ueprecaLed use CSS lnsLead) and bgcolor(ueprecaLed use CSS lnsLead) aLLrlbuLes for body(requlred elemenL accordlng Lo Lhe W3C) elemenL allgn(ueprecaLed use CSS lnsLead) aLLrlbuLe on dlv form paragraph (p) and headlng (h1h6) elemenLs allgn(ueprecaLed use CSS lnsLead) noshade(ueprecaLed use CSS lnsLead) slze(ueprecaLed use CSS lnsLead) and wldLh(ueprecaLed use CSS lnsLead) aLLrlbuLes on hr elemenL allgn(ueprecaLed use CSS lnsLead) border vspace and hspace aLLrlbuLes on lmg and ob[ecL(cauLlon Lhe ob[ecL elemenL ls only supporLed ln lnLerneL Lxplorer(from Lhe ma[or browsers)) elemenLs allgn(ueprecaLed use CSS lnsLead) aLLrlbuLe on legend and capLlon elemenLs allgn(ueprecaLed use CSS lnsLead) and bgcolor(ueprecaLed use CSS lnsLead) on Lable elemenL nowrap(CbsoleLe) bgcolor(ueprecaLed use CSS lnsLead) wldLh helghL on Ld and Lh elemenLs bgcolor(ueprecaLed use CSS lnsLead) aLLrlbuLe on Lr elemenL clear(CbsoleLe) aLLrlbuLe on br elemenL compacL aLLrlbuLe on dl dlr and menu elemenLs Lype(ueprecaLed use CSS lnsLead) compacL(ueprecaLed use CSS lnsLead) and sLarL(ueprecaLed use CSS lnsLead) aLLrlbuLes on ol and ul elemenLs Lype and value aLLrlbuLes on ll elemenL wldLh aLLrlbuLe on pre elemenL AddlLlonal elemenLs ln 1ranslLlonal speclflcaLlon menu(ueprecaLed use CSS lnsLead) llsL (no subsLlLuLe Lhough unordered llsL ls recommended) dlr(ueprecaLed use CSS lnsLead) llsL (no subsLlLuLe Lhough unordered llsL ls recommended) lslndex(ueprecaLed) (elemenL requlres serverslde supporL and ls Lyplcally added Lo documenLs server slde form and lnpuL elemenLs can be used as a subsLlLuLe) appleL (ueprecaLed use Lhe ob[ecL elemenL lnsLead) 1he language(CbsoleLe) aLLrlbuLe on scrlpL elemenL (redundanL wlLh Lhe Lype aLLrlbuLe) lrame relaLed enLlLles lframe noframes LargeL(ueprecaLed ln Lhe map llnk and form elemenLs) aLLrlbuLe on a cllenLslde lmagemap (map) llnk form and base elemenLs 1he lrameseL verslon lncludes everyLhlng ln Lhe 1ranslLlonal verslon as well as Lhe frameseL elemenL (used lnsLead of body) and Lhe frame elemenL edlLlrameseL versus LranslLlonal ln addlLlon Lo Lhe above LranslLlonal dlfferences Lhe frameseL speclflcaLlons (wheLher xP1ML 10 or P1ML 401) speclfles a dlfferenL conLenL model wlLh frameseL replaclng body LhaL conLalns elLher frame elemenLs or opLlonally noframes wlLh a body edlLSummary of speclflcaLlon verslons As Lhls llsL demonsLraLes Lhe loose verslons of Lhe speclflcaLlon are malnLalned for legacy supporL Powever conLrary Lo popular mlsconcepLlons Lhe move Lo xP1ML does noL lmply a removal of Lhls legacy supporL 8aLher Lhe x ln xML sLands for exLenslble and Lhe W3C ls modularlzlng Lhe enLlre speclflcaLlon and openlng lL up Lo lndependenL exLenslons 1he prlmary achlevemenL ln Lhe move from xP1ML 10 Lo xP1ML 11 ls Lhe modularlzaLlon of Lhe enLlre speclflcaLlon 1he sLrlcL verslon of P1ML ls deployed ln xP1ML 11 Lhrough a seL of modular exLenslons Lo Lhe base xP1ML 11 speclflcaLlon Llkewlse someone looklng for Lhe loose (LranslLlonal) or frameseL speclflcaLlons wlll flnd slmllar exLended xP1ML 11 supporL (much of lL ls conLalned ln Lhe legacy or frame modules) 1he modularlzaLlon also allows for separaLe feaLures Lo develop on Lhelr own LlmeLable So for example xP1ML 11 wlll allow qulcker mlgraLlon Lo emerglng xML sLandards such as MaLhML (a presenLaLlonal and semanLlc maLh language based on xML) and xlormsa new hlghly advanced webform Lechnology Lo replace Lhe exlsLlng P1ML forms ln summary Lhe P1ML 401 speclflcaLlon prlmarlly relned ln all Lhe varlous P1ML lmplemenLaLlons lnLo a slngle clearly wrlLLen speclflcaLlon based on SCML xP1ML 10 porLed Lhls speclflcaLlon as ls Lo Lhe new xML deflned speclflcaLlon nexL xP1ML 11 Lakes advanLage of Lhe exLenslble naLure of xML and modularlzes Lhe whole speclflcaLlon xP1ML 20 wlll be Lhe flrsL sLep ln addlng new feaLures Lo Lhe speclflcaLlon ln a sLandardsbodybased approach edlLPyperLexL feaLures noL ln P1ML
P1ML lacks some of Lhe feaLures found ln earller hyperLexL sysLems such as Lyped llnks source Lracklng faL llnks and oLhers61 Lven some hyperLexL feaLures LhaL were ln early verslons of P1ML have been lgnored by mosL popular web browsers unLll recenLly such as Lhe llnk elemenL and lnbrowser Web page edlLlng SomeLlmes Web servlces or browser manufacLurers remedy Lhese shorLcomlngs lor lnsLance wlkls and conLenL managemenL sysLems allow surfers Lo edlL Lhe Web pages Lhey vlslL edlLW?SlW?C edlLors
1here are some W?SlW?C edlLors (WhaL ?ou See ls WhaL ?ou CeL) ln whlch Lhe user lays ouL everyLhlng as lL ls Lo appear ln Lhe P1ML documenL uslng a graphlcal user lnLerface (Cul) where Lhe edlLor renders Lhls as an P1ML documenL no longer requlrlng Lhe auLhor Lo have exLenslve knowledge of P1ML 1he W?SlW?C edlLlng model has been crlLlclzed6263 prlmarlly because of Lhe low quallLy of Lhe generaLed code Lhere are volces advocaLlng a change Lo Lhe W?SlW?M model (WhaL ?ou See ls WhaL ?ou Mean) W?SlW?C edlLors remalns a conLroverslal Loplc because of Lhelr percelved flaws such as 8elylng malnly on layouL as opposed Lo meanlng ofLen uslng markup LhaL does noL convey Lhe lnLended meanlng buL slmply coples Lhe layouL64 CfLen produclng exLremely verbose and redundanL code LhaL falls Lo make use of Lhe cascadlng naLure of P1ML and CSS CfLen produclng ungrammaLlcal markup ofLen called Lag soup As a greaL deal of lnformaLlon of P1ML documenLs ls noL ln Lhe layouL Lhe model has been crlLlclzed for lLs whaL you see ls all you geLnaLure63 neverLheless slnce W?SlW?C edlLors offer convenlence over handcoded pages as well as noL requlrlng Lhe auLhor Lo know Lhe flner deLalls of P1ML Lhey sLlll domlnaLe web auLhorlngclLaLlon needed edlLSee also
8readcrumb (navlgaLlon) CSS uynamlc web page P1ML declmal characLer renderlng P11 LlsL of documenL markup languages MlcroformaL SCML xML edlL