Monday, January 1, 2007

Ajax ( programming ) :History

The first use of the term in public was by Jesse James Garrett in February 2005[1]. Garrett thought of the term while in the shower[2], when he realized the need for a shorthand term to represent the suite of technologies he was proposing to a client[3].Although the term "Ajax" was coined in 2005, most histories of the technologies that enable Ajax start a decade earlier with Microsoft's initiatives in developing Remote Scripting. Techniques for the asynchronous loading of content on an existing Web page without requiring a full reload date back as far as the IFRAME element type (introduced in Internet Explorer 3 in 1996) and the LAYER element type (introduced in Netscape 4 in 1997, abandoned during early development of Mozilla). Both element types had a src attribute that could take any external URL, and by loading a page containing JavaScript that manipulated the parent page, Ajax-like effects could be attained. This set of client-side technologies was usually grouped together under the generic term of DHTML. Macromedia's Flash could also, from version 4, load XML and CSV files from a remote server without requiring a browser refresh.Microsoft's Remote Scripting (or MSRS, introduced in 1998) acted as a more elegant replacement for these techniques, with data being pulled in by a Java applet with which the client side could communicate using JavaScript. This technique worked on both Internet Explorer version 4 and Netscape Navigator version 4 onwards. Microsoft then created the XMLHttpRequest object in Internet Explorer version 5 and first took advantage of these techniques using XMLHttpRequest in Outlook Web Access supplied with the Microsoft Exchange Server 2000 release.The Web development community, first collaborating via the microsoft.public.scripting.remote newsgroup and later through blog aggregation, subsequently developed a range of techniques for remote scripting in order to enable consistent results across different browsers. In 2002, a user-community modification[4] to Microsoft Remote Scripting was made to replace the Java applet with XMLHttpRequest.Remote Scripting Frameworks such as ARSCIF[5] surfaced in 2003 not long before Microsoft introduced Callbacks in ASP.NET[6].Since XMLHttpRequest is now implemented across the majority of browsers in use, alternative techniques are used infrequently. However, they are still used where compatibility with older Web sites or legacy applications is required.In addition, the World Wide Web Consortium has several Recommendations that also allow for dynamic communication between a server and user agent, though few of them are well supported. These would include:The object element defined in HTML 4 for embedding arbitrary content types into documents, (replaces inline frames under XHTML 1.1)The Document Object Model (DOM) Level 3 Load and Save Specification [1]

HTML

In computing, HyperText Markup Language (HTML) is the predominant markup language for the creation of web pages. It provides a means to describe the structure of text-based information in a document — by denoting certain text as headings, paragraphs, lists, and so on — and to supplement that text with interactive forms, embedded images, and other objects. HTML can also describe, to some degree, the appearance and semantics of a document, and can provide additional cues, such as embedded scripting language code, that can affect the behavior of web browsers and other HTML processors.HTML is also often used to refer to content of the MIME type text/html or even more broadly as a generic term for HTML whether in its XML descended form (such as XHTML 1.0 and later) or its form descended directly from SGML (such as HTML 4.01 and earlier).

History of HTML

Tim Berners-Lee created the original HTML (and many of the associated protocols such as HTTP) on a NeXTcube workstation using the NeXTSTEP development environment. At the time, HTML was not a specification, but a collection of tools to solve an immediate problem: the communication and dissemination of ongoing research among Berners-Lee and a group of his colleagues. His solution later combined with the emerging international and public internet to garner worldwide attention.Early versions of HTML were defined with loose syntactic rules, which helped its adoption by those unfamiliar with web publishing. Web browsers commonly made assumptions about intent and proceeded with rendering of the page. Over time, the trend in the official standards has been to create an increasingly strict language syntax; however, browsers still continue to render pages that are far from valid HTML.HTML is defined in formal specifications that were developed and published throughout the 1990s, inspired by Tim Berners-Lee's prior proposals to graft hypertext capability onto a homegrown SGML-like markup language for the Internet. The first published specification for a language called HTML was drafted by Berners-Lee with Dan Connolly, and was published in 1993 by the IETF as a formal "application" of SGML (with an SGML Document Type Definition defining the grammar). The IETF created an HTML Working Group in 1994 and published HTML 2.0 in 1995, but further development under the auspices of the IETF was stalled by competing interests. Since 1996, the HTML specifications have been maintained, with input from commercial software vendors, by the World Wide Web Consortium (W3C).[1] However, in 2000, HTML also became an international standard (ISO/IEC 15445:2000). The last HTML specification published by the W3C is the HTML 4.01 Recommendation, published in late 1999 and its issues and errors were last acknowledged by errata published in 2001.Since the publication of HTML 4.0 in late 1997, the W3C's HTML Working Group has increasingly — and since 2002, exclusively — focused on the development of XHTML, an XML-based counterpart to HTML that is described on one W3C web page as HTML's "successor".[2][3][4] XHTML applies the more rigorous, less ambiguous syntax requirements of XML to HTML to make it easier to process and extend, and as support for XHTML has increased in browsers and tools, it has been embraced by many web standards advocates in preference to HTML. XHTML is routinely characterized by mass-media publications for both general and technical audiences as the newest "version" of HTML, but W3C publications, as of 2006, do not make such a claim; neither HTML 3.2 nor HTML 4.01 have been explicitly rescinded, deprecated, or superseded by any W3C publications, and, as of 2006, they continue to be listed alongside XHTML as current Recommendations in the W3C's primary publication indices.[5][6][7]Version history of the standardHypertext Markup Language (First Version), published June 1993 as an Internet Engineering Task Force (IETF) working draft (not standard).HTML 2.0, published November 1995 as IETF RFC 1866, supplemented by RFC 1867 (form-based file upload) that same month, RFC 1942 (tables) in May 1996, RFC 1980 (client-side image maps) in August 1996, and RFC 2070 (internationalization) in January 1997; ultimately all were declared obsolete/historic by RFC 2854 in June 2000.HTML 3.2, published January 14, 1997 as a W3C Recommendation.HTML 4.0, published December 18, 1997 as a W3C Recommendation. It offers three "flavors":Strict, in which deprecated elements are forbiddenTransitional, in which deprecated elements are allowedFrameset, in which mostly only frame related elements are allowed.HTML 4.01, published December 24, 1999 as a W3C Recommendation. It offers the same three flavors as HTML 4.0, and its last errata was published May 12, 2001.ISO/IEC 15445:2000 ("ISO HTML", based on HTML 4.01 Strict), published May 15, 2000 as an ISO/IEC international standard.HTML 4.01 and ISO/IEC 15445:2000 are the most recent and final versions of HTML. HTML's successor, XHTML, is a separate language that began as a reformulation of HTML 4.01 using XML 1.0. It continues to be developed:XHTML 1.0, published January 26, 2000 as a W3C Recommendation, later revised and republished August 1, 2002. It offers the same three flavors as HTML 4.0 and 4.01, reformulated in XML, with minor restrictions.XHTML 1.1, published May 31, 2001 as a W3C Recommendation. It is based on XHTML 1.0 Strict, but includes minor changes and is reformulated using modules from Modularization of XHTML, which was published April 10, 2001 as a W3C Recommendation.XHTML 2.0 is still a W3C Working Draft.There is no official standard HTML 1.0 specification because there were multiple informal HTML standards at the time. However, some people consider the initial edition provided by Tim Berners-Lee to be the definitive HTML 1.0. That version did not include an IMG element type. Work on a successor for HTML, then called "HTML+", began in late 1993, designed originally to be "A superset of HTML…which will allow a gradual rollover from the previous format of HTML". The first formal specification was therefore given the version number 2.0 in order to distinguish it from these unofficial "standards".Work on HTML+ continued, but it never became a standard.The HTML 3.0 standard was proposed by the newly formed W3C in March 1995, and provided many new capabilities such as support for tables, text flow around figures, and the display of complex math elements. Even though it was designed to be compatible with HTML 2.0, it was too complex at the time to be implemented, and when the draft expired in September 1995, work in this direction was discontinued due to lack of browser support. HTML 3.1 was never officially proposed, and the next standard proposal was HTML 3.2 (code-named "Wilbur"), which dropped the majority of the new features in HTML 3.0 and instead adopted many browser-specific element types and attributes which had been created for the Netscape and Mosaic web browsers. Math support as proposed by HTML 3.0 finally came about years later with a different standard, MathML.HTML 4.0 likewise adopted many browser-specific element types and attributes, but at the same time began to try to "clean up" the standard by marking some of them as deprecated, and suggesting they not be used.Minor editorial revisions to the HTML 4.0 specification were published as HTML 4.01.The most common filename extension for files containing HTML is .html. However, older operating systems and filesystems, such as the DOS versions from the 80's and early 90's and FAT, limit file extensions to three letters, so a .htm extension is also used. Although perhaps less common now, the shorter form is still widely supported by current software.HTML as a hypertext formatHTML is the basis of a comparatively weak hypertext implementation. Earlier hypertext systems had features such as typed links, transclusion and source tracking. Another feature lacking today is fat links.[8]Even some hypertext features that were in early versions of HTML have been ignored by most popular web browsers until now, such as the link element and editable web pages.Sometimes web services or browser manufacturers remedy these shortcomings. For instance, members of the modern social software landscape such as wikis and content management systems allow surfers to edit the web pages they visit

Semantic HTML

==Semantic HTML==There is no official specification called "Semantic HTML", though the strict flavors of HTML discussed [[#Current flavors of HTMLbelow]] are a push in that direction. Rather, semantic HTML refers to an objective and a practice to create documents with HTML that contain only the author's intended meaning, without any reference to how this meaning is presented or conveyed. A classic example is the distinction between the emphasis element, and the italics element . Often the emphasis element is displayed in italics, so the presentation is typically the same. However, emphasizing something is different from listing the title of a book, for example, which may also be displayed in italics. In purely semantic HTML, a book title would use a separate element than emphasized text uses, because they are each meaningfully different things.The goal of semantic HTML requires two things of authors:1) to avoid the use of presentational markup (elements, attributes and other entities);2) the use of available markup to differentiate the meanings of phrases and structure in the document. So for example, the book title from above would need to have its own element and class specified such as .The Grapes of Wrath. Here, the element is used, because it most closely matches the meaning of this phrase in the text. However, the element is not specific enough to this task because we mean to cite specifically a book title as opposed to a newspaper article or a particular academic journal.Semantic HTML also requires complementary specifications and software compliance with these specifications. Primarily, the development and proliferation of [[Cascading Style SheetsCSS]] has led to increasing support for semantic HTML because CSS provides designers with a rich language to alter the presentation of semantic-only documents. With the development of CSS the need to include presentational properties in a document has virtually disappeared. With the advent and refinement of CSS and the increasing support for it in web browsers, subsequent editions of HTML increasingly stress only using markup that suggests the semantic structure and phrasing of the document, like headings, paragraphs, quotes, and lists, instead of using markup which is written for visual purposes only, like, (bold), and (italics). Some of these elements are not permitted in certain varieties of HTML, like HTML 4.01 Strict. CSS provides a way to separate document semantics from the content's presentation, by keeping everything relevant to presentation defined in a CSS file. See [[separation of style and content]].Semantic HTML offers many advantages. First, it ensures consistency in style across elements that have the same meaning. Every heading, every quotation mark, every similar element receives the same presentation properties.Second, semantic HTML frees authors from the need to concern themselves with presentation details. When writing the number two, for example, should it be written out in words ("two"), or should it be written as a numeral (2)? A semantic markup might enter something like 2 and leave presentation details to the stylesheet designers. Similarly, an author might wonder where to break out quotations into separate indented blocks of text - with purely semantic HTML, such details would be left up to stylesheet designers. Authors would simply indicate quotations when they occur in the text, and not concern themselves with presentation.A third advantage is device independence and repurposing of documents. A semantic HTML document can be paired with any number of stylesheets to provide output to computer screens (through web browsers), high-resolution printers, handheld devices, aural browsers or braille devices for those with visual impairments, and so on. To accomplish this nothing needs to be changed in a well coded semantic HTML document. Readily available stylesheets make this a simple matter of pairing a semantic HTML document with the appropriate stylesheets (of course, the stylesheet's selectors need to match the appropriate properties in the HTML document).Some aspects of authoring documents make separating semantics from style (in other words, meaning from presentation) difficult. Some elements are hybrids, using presentation in their very meaning. For example, a table displays content in a tabular form. Often this content only conveys the meaning when presented in this way. Repurposing a table for an aural device typically involves somehow presenting the table as an inherently visual element in an audible form. On the other hand, we frequently present lyrical songs — something inherently meant for audible presentation — and instead present them in textual form on a web page. For these types of elements, the meaning is not so easily separated from their presentation. However, for a great many of the elements used and meanings conveyed in HTML the translation is relatively smooth.

Adobe Flash

Adobe Flash (formerly Macromedia Flash, originally FutureSplash Animator), or simply Flash, refers to both the Adobe Flash Player and to a multimedia authoring program used to create content for the Adobe Engagement Platform (such as web applications, games and movies). The Flash Player, developed and distributed by Adobe Systems (which bought Macromedia in 2005), is a client application available in most dominant web browsers. It features support for vector and raster graphics, a scripting language called ActionScript and bi-directional streaming of audio and video.Strictly speaking, Adobe Flash is an integrated development environment (IDE) while Flash Player is a virtual machine used to run, or parse, the Flash files, but in contemporary colloquial terms "Flash" can refer to the authoring environment, the player or the application files.Since its introduction in 1996, Flash technology has become a popular method for adding animation and interactivity to web pages; several software products, systems, and devices are able to create or display Flash. Flash is commonly used to create animation, advertisements, various web-page components, to integrate video into web pages, and more recently, to develop rich Internet applications.The Flash files, traditionally called "Flash movies", have a .swf file extension and may be an object of a web page, strictly "played" in a standalone Flash Player, or incorporated into a Projector, a self-executing Flash movie.