SGML, HTML, e XML são todos linguagens de marcação. O termo "marcação" originou-se de editores que revisavam seus manuscritos. Um editor "marca" o manuscrito para destacar certos campos. Na tecnologia da computação, uma linguagem de marcação é um conjunto de palavras e símbolos que destaca o texto para defini-lo para um documento da web. Por exemplo, para separar parágrafos e colocar letras em negrito, os web designers usam a linguagem de marcação. Depois de entender os papéis que SGML, HTML e XML desempenham no web design, você verá o parentesco que essas linguagens distintas têm entre si. Em suma, SGML, HTML e XML são uma família de linguagens que ajudam a tornar os sites funcionais e dinâmicos o design da web.
SGML
Nesta família de linguagens de marcação, a Standard Generalized Markup Language (SGML) é a mãe. SGML fornece uma maneira de definir linguagens de marcação e define o padrão para seu formulário. Em outras palavras, SGML afirma o que algumas linguagens podem ou não fazer, quais elementos devem ser incluídos, como tags, e a estrutura básica da linguagem. Quando um pai passa traços genéticos para um filho, SGML passa regras de estrutura e formato para linguagens de marcação.
HTML
HyperText Markup Language (HTML) é um filho, ou aplicativo, de SGML. É o HTML que estrutura a página de um navegador. Usando HTML, você pode incorporar imagens, criar seções de página, estabelecer fontes e direcionar o fluxo da página. Além disso, usando HTML, você pode adicionar outras funções a um site por meio de linguagens de script, como JavaScript. HTML é a linguagem predominante usada no design de sites.
XML
Extensible Markup Language (XML) é prima do HTML e sobrinho do SGML. Embora XML seja uma linguagem de marcação e, portanto, parte da família, tem funções diferentes do HTML. XML é um subconjunto de SGML, que fornece direitos que um aplicativo, como HTML, não possui. XML pode definir seus próprios aplicativos. O Resource Description Format (RDF) é um aplicativo XML. O HTML é limitado ao design e não possui subconjuntos ou aplicativos. XML é uma versão reduzida ou leve de SGML, projetada para funcionar com largura de banda limitada. XML herdou traços genéticos de SGML, mas foi criado para formar sua própria família. Os subconjuntos de XML incluem XSL e XSLT.