SGML

introduction

Joost van Meeteren


SGML - links

Debian.org - What you really need to know about SGML.

Encyclo.nl - SGML.

Newbiedoc.sourceforge.net - NewbieDoc Docbook Guide.

Playgarden.com - Over SGML en HTML.

Validator.w3.org - Introduction to SGML for the W3C Markup Validator.

W3.org - A brief SGML tutorial - ... HTML is one such "application" of SGML ... .

W3.org - On SGML and HTML.

SGML-UG - SGML.


Cjihrig.com - The DOCTYPE - Your First Step to HTML5 - ... previous versions of HTML were based on SGML. SGML DOCTYPES specify additional information such as a public identifier and a system identifier. HTML5 is not based on SGML, and thus does not require a longer DOCTYPE. ... .

Linkedin.com - Why HTML 5 is not based on SGML?

Youtube.com - Why HTML5 is Not Based on SGML.


Wikipedia NL - Document Type Definition.

Wikipedia EN - Document type definition.


Wikipedia EN - Standard Generalized Markup Language.

Wikipedia NL - Standard Generalized Markup Language.


See also

SGML parent of (X)HTML & XML.


SGML - Introduction

Standard Generalized Markup Language

SGML is the basis for HTML4 and earlier versions.

SGML uses elements that carry the content (text) of the file. An element consists of a start tag and a end tag in between you find the content.


HTML4 / XHTML = SGML

Using a DTD

(X)HTML can be considered as an application of SGML. HTML (strict.dtd used for HTML 4.01 Strict), XHTML (xhtml1-strict.dtd) and SGML (docbook.dtd for writing technical documentation, especially about software) make use of a so called DTD (Document Type Definition) that defines the syntax of these markup languages.

...


HTML5 ≠ SGML

Not using a DTD

HTML5 has broken with the DTD. It is a system in itself and has only a DocType ( <!DOCTYPE html> ). The DocType declaration is here only an instruction to the web browser about what version of HTML the page is written in. In HTML4 en XHTML the DocType declaration refers to a DTD specifying the rules for the markup language, so that the browser renders the content correctly, and to the system identifier that expresses the document type and version.

...


SGML - Example


1. SGML example:

<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN">

<book>

<title>title</title>

<author>author</author>

</book>


(X)HTML - Example


2a. HTML4.01 example:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">

<html lang="nl">

<head>

<meta http-equiv="content-type" content="text/html;charset=utf-8">

<meta http-equiv="content-style-type" content="text/css">

<title>Valid HTML 4.01</title>

</head>

<body>

[ content ]

</body>

</html>


2b. XHTML1.0 example:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="nl" xml:lang="nl">

<head>

<meta http-equiv="content-type" content="application/xhtml+xml;charset=utf-8" />

<meta http-equiv="content-style-type" content="text/css" />

<title>Valid XHTML1.0</title>

</head>

<body>

[ content ]

</body>

</html>


2c. XHTML1.1 example:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
            "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="nl">

<head>

<meta http-equiv="content-type" content="application/xhtml+xml;charset=utf-8" />

<meta http-equiv="content-style-type" content="text/css" />

<link href="../images/xhtml_icon.png" rel="icon" type="image/png" />

<title>Gevalideerd XHTML 1.1</title>

</head>

<body>

[ content ]

</body>

</html>


HTML5 - Example


3. HTML5 example:

<!DOCTYPE html>

<html lang="nl">

<head>

<meta charset="utf-8">

<title>Valid HTML5</title>

</head>

<body>

[ content ]

</body>

</html>


Joost De WebMaker
2002-2024 © Joost van Meeteren
Laatste update website: vrijdag 6 december 2024