SGML (Standard Generalized Markup Language)

HTML, XHTML, and XML are all examples of SGML-based languages.

SGML descended from IBM's Generalized Markup Language (GML), which Charles Goldfarb, Edward Mosher, and Raymond Lorie developed in the 1960s. Goldfarb, editor of the international standard, coined the "GML" term using their surname initials. The syntax of SGML is closer to the COCOA format. As a document markup language, SGML was originally designed to enable the sharing of machine-readable large-project documents in government, law, and industry. Many such documents must remain readable for several decades a long time in the information technology field. SGML also was extensively applied by the military, and the aerospace, technical reference, and industrial publishing industries. The advent of the XML profile has made SGML suitable for widespread application for small-scale, general-purpose use.

Visit http://en.wikipedia.org/wiki/Standard_Generalized_Markup_Language for more information...

As mentioned, you can think of a Microsoft Office document as being built from a type of markup language. However, Microsoft Office documents can be read only by Microsoft Office or by an application that can convert a Microsoft Office document. Thus, Microsoft Office documents are not application-independent and can be shared only with people who have Microsoft Office or a converter. Because corporations need to share data with a large number of partners, customers, and different departments within the corporation, they need documents that are application-independent. SGML was designed to meet this need; it is a markup language that is completely independent of any application.

SGML uses a document type definition (DTD) to define the structure of the document. The DTD specifies the elements and attributes that can be used within the document and specifies what characters will be used to mark the text. In SGML, you can use brackets (<>), dashes (-), or any other character to mark up your document as long as the special character is properly defined in the DTD.

SGML has existed for more than a decade and is older than the Web. It is a metalanguage that was created to maintain repositories of structured documentation in an electronic format. As a metalanguage, SGML describes the document structures for other markup languages. SGML is used to define the markup characters and structure for XML. An SGML definition for HTML has also been created. Both HTML and XML can be considered applications of SGML.

SGML is an extremely versatile, powerful language. Unfortunately, these features come with a price: SGML is difficult to use. Training people to use SGML documents and creating applications that read SGML documents requires a great deal of time and energy. Because of these difficulties, SGML is not suited for Web development. The specification for SGML is over 500 pages long, with over 100 pages of annexes. It is a very complex specification designed for large, complex systems-overkill for our three goals of standardized messages, separation of data and presentation, and method calling.