What Is The Full Form Of SGML?
The full form of SGML is Standard Generalized Markup Language.
SGML is a standard that defines how to specify the generalized markup languages for various documents. It is not a document language in itself but rather a description regarding how to define them. Thus, it’s metadata. It follows the idea that every document has various semantic elements like their structure which one can describe without any reference to how to display them. On the other hand, the actual display of these docs may vary based on the output medium and preference of styles.
A theoretical example of SGML-based language is HTML. However, the browsers cannot parse HTML 5 with the SGML standard due to some compatibility reasons. SGML is based somewhat on earlier markup languages like GML. It later extended itself into languages like XML (Extensible Markup Language) and HTML (HyperText Markup Language).
Postulates of SGML
The ISO 8879 Annex A.1 affirms that this generalized markup follows two postulates:
- Rigorous – To allow the markup to use the techniques available for processing rigorously defined objects, such as programs and databases.
- Declarative – The markup needs to describe the structure of a document along with its other attributes. It does not need to specify what processes the system will perform. It is because it is not very likely to conflict with future developments.
History of SGML
- This standard descended from IBM’s GML (Generalized Markup Language).
- Edward Mosher, Charles Goldfarb, and Raymond Lorie developed GML in the 1960s. The editor of the international standard, Goldfarb, used the initials of their surnames to coin the term GML.
- SGML originated as a document markup language. It aimed to enable the sharing of large-project documents that are machine-readable. It included docs in law, government, and industry.
- The military, aerospace, industrial publishing industries, and technical reference also extensively applied SGML.
- The XML profile advent made SGML suitable for its widespread application in general purposes and small-scale industries.
Components of SGML Doc
An SGML document mainly consists of three components, and they are:
- Document instance
- SGML Declaration
Characteristics of Components
- The prologue contains a DOCTYPE declaration. It has various markup declarations together constituting a DTD (Document Type Definition).
- The SGML declaration specifies the characters and delimiters that may appear in an application.
- The DTD (document type declaration). It defines the syntax associated with markup constructs. It may also include additional definitions like numeric.
- The document instance contains one top-most element along with its contents and markup. It also contains a DTD reference so that it can interpret it.
- One specification describes the semantics ascribed to the markup. The specification also contributes to imposing those syntax restrictions unexpressible within the DTD.
Advantages of SGML
- One can recreate the SGML on the basis of document structure instead of appearance characteristics. It is good because such characteristics may change over time.
- The documents produced originally for print media can re-adapt into other media, like the computer display screen.
- A compiler of SGML can interpret any document easily by referencing its DTD (document type definition). Thus, it becomes more portable.
- The SGML standard supports all media types, and it can encode the entire structure of any document.
- It separates the content from its appearance.
- The stylesheets with SGML make its content reusable for various purposes.
- The file encoding that SGML offers can perform more formatting when compared to HTML.
- SGML is much more in use compared to HTML because HTML provides capabilities for coding visual representation, and it cannot structure the original information/data.
- Due to ISO standards, many tools are available for SGML. Thus, it is well supported currently.
Disadvantages of SGML
- Coding software in SGML may be typical and complicated.
- The tools in use with this standard are very expensive.
- SGML may not have extensive use.
- It needs special software for running and allowing the document to display.
- Creating the DTDs requires exacting software engineering.