 
 KAL
 KAL
 
 
 Despite its name, SGML is not a markup language.
 
Despite its name, SGML is not a markup language. 
 It is a language for specifying markup languages.
 
It is a language for specifying markup languages. 
 It was developed by the Department of Defense
to ease the portability of electronic documents.
 
It was developed by the Department of Defense
to ease the portability of electronic documents.
 It is also known as ISO 8879, and is the  fastest selling standard in
history!
 
It is also known as ISO 8879, and is the  fastest selling standard in
history!  
 It is part of the 
CALS initiative.
 
It is part of the 
CALS initiative. 
 Its use has crossed academic, university, public, private, and military boundaries.
 
Its use has crossed academic, university, public, private, and military boundaries.
 (Can anyone name anything else used by such a diverse group?)
 
(Can anyone name anything else used by such a diverse group?) 
 Its use is simple: it allows the transfer of formatted text, and both
electronic and print output can be obtained from the same text.
 
Its use is simple: it allows the transfer of formatted text, and both
electronic and print output can be obtained from the same text. 
 SGML:
 
SGML: 
 Supports intelligent queries in database systems and information re-use,
both buzz words of the 80's and 90's.
 
Supports intelligent queries in database systems and information re-use,
both buzz words of the 80's and 90's. 
 Sets up and enforces document standards.
 
Sets up and enforces document standards. 
 Is a tool for structured writing.
 
Is a tool for structured writing. 
 Is causing a revolution in publishing systems.
 
Is causing a revolution in publishing systems. 
 Makes electronic presentation practical.
 
Makes electronic presentation practical. 
 Is both brilliant and 
 ugly.
 
Is both brilliant and 
 ugly.
 SGML is more than a  
 Markup  Language. It is a metalanguage for specifying markup languages.
 
SGML is more than a  
 Markup  Language. It is a metalanguage for specifying markup languages. 
 How does this work?
 
How does this work? 
 Well, first, the creator of a new markup language writes a Document Type 
Definition (or Description), abbreviated DTD  using SGML. This DTD describes 
the form of a typical 
document as well as the tags to be used.
 
Well, first, the creator of a new markup language writes a Document Type 
Definition (or Description), abbreviated DTD  using SGML. This DTD describes 
the form of a typical 
document as well as the tags to be used. 
 The   
example  shows
tags for an (oversimplified)  EMail message type document.
 
The   
example  shows
tags for an (oversimplified)  EMail message type document. 
 Its  DTD  
defines those tags which were used.
 
Its  DTD  
defines those tags which were used. 
 If you have ever written a computer program, remember how you
have to declare the data structures that you will use in the program. Well,
a DTD similarly specifies the data (tags) you will use in your documents.
 
If you have ever written a computer program, remember how you
have to declare the data structures that you will use in the program. Well,
a DTD similarly specifies the data (tags) you will use in your documents. 
 The DTD AND the Marked up document are input to an SGML "parser" (misnomer,
for those of you who know how parsers are used in compilers) and there is, 
strictly speaking, only 1 output if everything has been coded correctly:
 
The DTD AND the Marked up document are input to an SGML "parser" (misnomer,
for those of you who know how parsers are used in compilers) and there is, 
strictly speaking, only 1 output if everything has been coded correctly: 
"OK"
 That's because all SGML does is enforce its own syntax and the conformance
of the marked up document with the DTD. Anything else - like formatting, say, -
is done by a postprocessor.
 
That's because all SGML does is enforce its own syntax and the conformance
of the marked up document with the DTD. Anything else - like formatting, say, -
is done by a postprocessor. 
 In fact, if any tags were omitted, the parser will insert them (if it can),
and the correctly marked up document is now used as a front end to a
formatter, database system, hypertext generator, etc.
 
In fact, if any tags were omitted, the parser will insert them (if it can),
and the correctly marked up document is now used as a front end to a
formatter, database system, hypertext generator, etc. 
 The CALS Project has created a number of other standards - DSSSL, for
specifying semantics (like formatting), SPDL, Standard Page Description 
Language, SDIF, SGML Document Interchange Format, and a number of standards for
graphics.
 
The CALS Project has created a number of other standards - DSSSL, for
specifying semantics (like formatting), SPDL, Standard Page Description 
Language, SDIF, SGML Document Interchange Format, and a number of standards for
graphics. 
 HyTime  is the Hypermedia/Time-based Structuring Language.
 
HyTime  is the Hypermedia/Time-based Structuring Language. 
 It specifies how Hypermedia documents - which can contain audio, moving
and still pictures - can be represented using SGML.
 
It specifies how Hypermedia documents - which can contain audio, moving
and still pictures - can be represented using SGML. 
 The issue here is one of representing time and movement and synchronization
in a document which
may be perceived as static.
 
The issue here is one of representing time and movement and synchronization
in a document which
may be perceived as static. 
 HyTime  associates
 
HyTime  associates 
 
 
 
  
 TEI's Gentle Introduction to SGML
 	
    
        TEI's Gentle Introduction to SGML 
 Benoit Marchal's  A Gentle Introduction to SGML
 	
	 
	   Benoit Marchal's  A Gentle Introduction to SGML  
Send questions and comments to: Karen Lemone