Introduction to SGML
• Standard
Generalized Markup Language
• Strictly
descriptive
• Contains
no means to mark up presentational aspects of documents
• Can be
easily interfaced to external procedural markup systems and style sheets
• Like
HTML, SGML is a computer language rather than a data format
• SGML
files can be created manually, or through SGML editor software tools.
• SGML is a
meta-language that defines only the syntax of a standard generalised markup
language, i.e. is prescribes how we should specify markup, but
not what that
markup is, nor what it means.
SGML Parser
• Software
that reads and analyzes an SGML document
• Validation
or transformation
• Not much
use by itself
• Part of a
bigger SGML application system or browser
SGML History
• More than
10 years history of use and growth…
• Widelypublishingusedand-aerospace,otherindustriesautomotive,
defense, software, semiconductor, pharmaceutical,
• ISO
standard (ISO 8879) – adopted by several other standards bodies
SGML: Key Features
• Descriptive
markup
• Document types
• Data
independence
Descriptive markup
• Use of
markup codes (names) to categorize parts of a document
• Example:
<para> to identify a paragraph
• Advantage:
Same document can be processed by different software for different purposes
Document Type
• Notion of
‗document type‘ (hence DTD)
• Type of a
document is formally defined by its constituent parts and their structure –
expressed in a tree structure
• Example:
Report
•
Title, followed by author (optional), abstract, one
or more paragraphs
• If title
is absent, it is not a report
• If
abstract follows paragraphs, it is not a report
Data Independence
• Document
portability across different HW and SW environments
• How to
handle character set differences
• Descriptive
mapping for non-portable characters
• String substitution
mechanism (entities): process time substitution of a particular string of
characters by other string of characters
Defining an SGML Application
• From SGML
view, a document is a hierarchical structure of nested elements (chapters,
sections, paragraphs, etc.)
• SGML does
not specify any presentational aspects of these elements
• SGML also
does not convey any meaning or role of these elements – meaning is implied by
the application
• SGML
specifies the contexts and levels of document hierarchy in which an element can
or must occur
• All
documents that can be marked up with the same hierarchy of elements are said to
belong to a certain document type
• SGML
defines the structure of a particular type of documents via the DTD (Document
Type Definition)
• Some
general features of an SGML application are specified in another component
called SGML Declaration.
• SGML
Syntax:
SGML
statements are enclosed in angle brackets (<>) and contain a keyword or
name followed by one or more parameters separated by spacesCharacter ‗!‘ is
inserted between
‗<‗
and the statement keyword
• Example:
<!ELEMENT IMG – O EMPTY – Embedded image -->
• Comments
within a <! Statement are enclosed in double hyphens (--)
Components of an SGML Document
• SGML
Declaration:
• Character
set, syntax (e.g. delimiters), optional features
• Usually a
single declaration is used for all documents under a particular system
• Prolog:
• Usually a
single document type definition (DTD)
• Contains
rules to which any document of a given type must conform
• Document instance:
• The
document itself marked up following the SGML usage conventions specified in the
SGML declaration and the DTD.
Advantages of SGML:
• Capable
of dealing with any media type or linking protocol
• Extremely
flexible
• Separates
content from appearance
• Style
sheets make content repurposing easy
• ISO
standard - thus well supported with many tools available
Disadvantages of SGML:
• Creating
DTD's requires exacting software engineering
• Linking
tends to be complex
• Writing
SGML software is extremely hard
• SGML
tools tend to be expansive
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2024 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.