<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet type="text/css"
   href="/~hammond/gellmu/gellmuart.css"?>
<!DOCTYPE article
  PUBLIC "-//GNU GPL: William F. Hammond//DTD GELLMU XML 0.7.5L//EN"
  "http://www.albany.edu/~hammond/gellmu/xml/axgellmu.dtd">
<article stem="general"
><preamble
><surtitle
>University at Albany XML<hyp
/>SGML Archive</surtitle><title
>Extensible Markup Language (<abbr
>XML</abbr>)<brk
/>
      Standard Generalized Markup Language (<abbr
>SGML</abbr>)</title><author
>William F. Hammond</author><date
>Last revision: <spc
/>June 2, 2006</date></preamble><body
><tableofcontents
/><section
>Basic</section><parb
><quophrase
>Standard Generalized Markup Language</quophrase> (<abbr
>SGML</abbr>) is a
language for defining markup languages<eos
/>  <abbr
>SGML</abbr> is defined by the
International Standards Organization Document <abbr
>ISO</abbr> 8879 [1986]<eos
/></parb><parb
>The <abbr
>ISO</abbr> document is not freely available<eos
/>  A copy of it is
found in the book:
<menu
><item
><itembody
>Charles F. Goldfarb, <emph
>The <abbr
>SGML</abbr>
Handbook</emph>,<brk
/>Clarendon Press, Oxford, 1990.</itembody></item></menu></parb><parb
><quophrase
>Hypertext Markup Language</quophrase> (<abbr
>HTML</abbr>), the basic
language of the World Wide Web, is a markup language under
<abbr
>SGML</abbr><eos
/></parb><parb
><quophrase
>Extensible Markup Language</quophrase> (<abbr
>XML</abbr>) is a limited form
of <abbr
>SGML</abbr> that is currently under heavy promotion by the World
Wide Web Consortium (<abbr
>W3C</abbr>)<eos
/>  It is sometimes perceived as
<quophrase
>extended <abbr
>HTML</abbr></quophrase><eos
/>  <abbr
>XML</abbr> has been designed to be
usable on browsing platforms, while full<hyp
/>fledged <abbr
>SGML</abbr> is
usually more suitable for authoring platforms<eos
/>  In fact, <abbr
>XML</abbr>
has for most purposes become the only form of <abbr
>SGML</abbr> that is
suitable for public sharing<eos
/>  Many <abbr
>SGML</abbr> languages<footnote
>The phrase <quophrase
><abbr
>SGML</abbr> language</quophrase> used here, as well as the
parallel phrase <quophrase
><abbr
>XML</abbr> language</quophrase>, is formally not
correct usage<eos
/>  What is called here an <abbr
>SGML</abbr> (respectively,
<abbr
>XML</abbr>) language is formally known as an <abbr
>SGML</abbr>
(respectively, <abbr
>XML</abbr>) <emph
>application</emph><eos
/>  Every <abbr
>XML</abbr>
application may also be regarded as an <abbr
>SGML</abbr> application<eos
/>  There
is an identifying correspondence between <emph
>applications</emph> in this
sense and <emph
>document types</emph><eos
/></footnote>
that are realistically suitable for authors admit rapid automatic
translation to nearly equivalent <abbr
>XML</abbr> languages<eos
/>  (Note that an
<abbr
>XML</abbr> language need not contain the <abbr
>HTML</abbr> tag set nor have
any relation to <abbr
>HTML</abbr>, and <abbr
>HTML</abbr> is not an <abbr
>XML</abbr>
language although it may be automatically converted to a language
under <abbr
>XML</abbr>.)
</parb><section
>Classical <abbr
>HTML</abbr> is not an <abbr
>XML</abbr> Language</section><parb
>Classical <abbr
>HTML</abbr> refers to the markup language behind World Wide
Web locations from the beginning of the Web at CERN, Geneva, until
very recently<eos
/>  The versions of <abbr
>W3C</abbr> <abbr
>HTML</abbr> numbered from 2.0
through 4.01 are all languages under <abbr
>SGML</abbr> that do not fall
within <abbr
>XML</abbr><eos
/></parb><parb
>Three simple reasons why <abbr
>HTML</abbr> is not an <abbr
>XML</abbr> language
are:
<enumerate
><item
><itembody
>In <abbr
>HTML</abbr> most paragraphs are marked up using an opentag
<qquostr
><ltc
/>P<gtc
/></qquostr> at the beginning of the paragraph without needing a
closetag <qquostr
><ltc
/><sol mml="mo"
/>P<gtc
/></qquostr> at the end, while there must be a closetag
for every opentag in <abbr
>XML</abbr><eos
/>
</itembody></item><item
><itembody
>In <abbr
>HTML</abbr> tag names are not case<hyp
/>sensitive, while in
<abbr
>XML</abbr> tag names are case<hyp
/>sensitive<eos
/>  (A new standard
way of converting <abbr
>HTML</abbr> into an <abbr
>XML</abbr> language will
specify that tag names all be lower case.)
</itembody></item><item
><itembody
>In <abbr
>HTML</abbr> some attribute values need not be placed inside
quotation marks, while in <abbr
>XML</abbr> all attribute values must be
quoted<eos
/></itembody></item></enumerate></parb><parb
>Early in the year 2000 a new evolute of <abbr
>HTML</abbr> referred to as
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>TR<sol mml="mo"
/>2000<sol mml="mo"
/>rec<hyp
/>xhtml1<hyp
/>20000126"</anchref><anchv
><abbr
>XHTML</abbr></anchv></anch>
<pdash
/> but bearing the formal document type name
<quophrase
>html</quophrase> (lower case characters only) <pdash
/> acquired the
status of <abbr
>W3C</abbr> Recommendation<eos
/>  <abbr
>XHTML</abbr>, version 1.0, is
an <abbr
>XML</abbr> language that has the same tag set as
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>TR<sol mml="mo"
/>1999<sol mml="mo"
/>REC<hyp
/>html401<hyp
/>19991224"</anchref><anchv
><abbr
>HTML</abbr> 4.01</anchv></anch><eos
/>  Apart from technical details <abbr
>XHTML</abbr> 1.0 is
almost the same language as <abbr
>HTML</abbr> 4.01<eos
/>  Because of the
technical differences, however, a computer does not need the full
weight of an <abbr
>SGML</abbr> processor to interpret <abbr
>XHTML</abbr><eos
/>  This
advantage is offset by the fact that it is slightly more difficult for
authors to create <abbr
>XHTML</abbr> than to create classical <abbr
>HTML</abbr><eos
/>
</parb><section
>The Nature of <abbr
>SGML</abbr></section><parb
>While <abbr
>SGML</abbr> may be described as a language for creating markup
languages with a shared syntax, more realistically and more
abstractly, an <abbr
>SGML</abbr> language (formally, an <abbr
>SGML</abbr>
<emph
>application</emph>) is a template for processing<eos
/>  For this
reason when an <abbr
>SGML</abbr> document (formally, an <abbr
>SGML</abbr>
<emph
>instance</emph>) is written, the author is, in fact, setting its
text as organized data<eos
/></parb><parb
>The abstract character of languages under the <abbr
>SGML</abbr> umbrella
makes it possible to use the family to describe computer programs<eos
/>
The Extensible Style Language (<abbr
>XSL</abbr>) described below is an
example of such an <abbr
>SGML</abbr> application that is, in fact, an
<abbr
>XML</abbr> application<eos
/>
</parb><section
>Styling and Translating <abbr
>XML</abbr> documents</section><parb
>In principle, an author may create a personal <abbr
>XML</abbr> language<eos
/>  To
do so the author must be prepared to provide, in addition,
(1) companion <quophrase
>style sheets</quophrase> or (2) companion translators<eos
/></parb><parb
>If one uses a language under <abbr
>XML</abbr> or <abbr
>SGML</abbr>, one must
understand what companion style sheets or translators will be used
with that language<eos
/></parb><parb
>A style sheet is a document that is created to provide directions for
a processing program, perhaps a printing formatter or a web browser,
on the formatting or rendering of a document that is prepared in a
markup language<eos
/></parb><parb
>While a translator may be any program, typically a translator is a
package of small programs (sometimes called functions) for processing
a document under an <abbr
>XML</abbr> language to some other language, which
might be <tex
/>, <abbr
>HTML</abbr>, another <abbr
>XML</abbr>, ..<eos
/>  under a general
framework for processing <abbr
>XML</abbr> or <abbr
>SGML</abbr><eos
/>  There are free
frameworks for writing such programs in various languages<eos
/>  Most of
these frameworks require pre<hyp
/>processing parsers, and free parsers
are also available<eos
/></parb><parb
>Near<hyp
/>term plans for the development of the World Wide Web anticipate
major web browsing programs having the capability to provide
finely<hyp
/>tuned rendering of <abbr
>XML</abbr> documents that are
accompanied by a style sheet<eos
/>  Style sheet support for <abbr
>HTML</abbr>
documents is currently available<eos
/></parb><parb
>Limited rendering of <abbr
>XML</abbr> documents on the World Wide Web
is based on
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>Style<sol mml="mo"
/>CSS<sol mml="mo"
/>"</anchref><anchv
><quophrase
>Cascading Style
Sheets</quophrase> (<abbr
>CSS</abbr>)</anchv></anch>, which has been in use for customized
rendering guidance with <abbr
>HTML</abbr> browsing programs<eos
/></parb><parb
>A future standard style language for <abbr
>XML</abbr> documents in World
Wide Web browsing programs is called
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>Style<sol mml="mo"
/>XSL<sol mml="mo"
/>"</anchref><anchv
><quophrase
>Extensible
Style Language</quophrase> (<abbr
>XSL</abbr>)</anchv></anch><eos
/>  <abbr
>XSL</abbr> is a restricted form
of <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.jclark.com<sol mml="mo"
/>dsssl<sol mml="mo"
/>"</anchref><anchv
><quophrase
>Document Style
Semantics and Specification Language</quophrase> (<abbr
>DSSSL</abbr>)</anchv></anch> that is
written with <abbr
>XML</abbr> syntax<eos
/>
The specification for <abbr
>XSL</abbr> was still under draft at <abbr
>W3C</abbr>
on March 1, 2000, while a variant called
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>TR<sol mml="mo"
/>xslt"</anchref><anchv
><quophrase
><abbr
>XSL</abbr> Transformation
Language</quophrase> (<abbr
>XSLT</abbr>)</anchv></anch>, which may be used for <emph
>translating</emph>
<abbr
>XML</abbr> languages to other languages (whether <abbr
>XML</abbr> or not),
became a <abbr
>W3C</abbr> recommendation in late 1999<eos
/></parb><parb
>While <abbr
>XSL</abbr><hyp
/>directed formatting offers more precision than is
available with <abbr
>CSS</abbr><hyp
/>guided  formatting,
in the overall world of <abbr
>XML</abbr> processing one should expect
formatting based on either <abbr
>CSS</abbr> or <abbr
>XSL</abbr> style sheets to be
a limited type of formatting<eos
/>  One should expect to obtain the finest
typesetting results by going beyond the narrow class of <abbr
>XML</abbr>
translation programs that admit expression in a style sheet language<eos
/></parb><parb
>A relatively new simple example of <abbr
>SGML</abbr> processing may be found
in the system manual under <abbr
>SunOS</abbr>, version 5.7<eos
/>
Observant users of University at Albany SunStations may have noticed
that as of the summer of 1999 most of the system manual in the central
<qquostr
><sol mml="mo"
/>usr<sol mml="mo"
/>man</qquostr> area now exists in source form under an <abbr
>SGML</abbr>
document type for the manual rather than, as formerly, in the
<emph
>nroff</emph> typesetting language<eos
/>  (This is temporarily hampering the
operation of the classical <abbr
>X11</abbr> program <emph
>xman</emph> for the
affected portions of the system manual; text rendering is not
affected.)  See the manual page for <quophrase
>solbook</quophrase> and browse
<qquostr
><sol mml="mo"
/>usr<sol mml="mo"
/>lib<sol mml="mo"
/>sgml</qquostr> and <qquostr
><sol mml="mo"
/>usr<sol mml="mo"
/>share<sol mml="mo"
/>lib<sol mml="mo"
/>sgml</qquostr> for more
information<eos
/></parb><parb
>A document created carefully today under a well designed <abbr
>XML</abbr> or
<abbr
>SGML</abbr> language should admit automatic conversion to future
formats once an <abbr
>SGML</abbr> or <abbr
>XML</abbr> translator for such
conversion has been created<eos
/>
</parb><section
>Example Languages under <abbr
>XML</abbr> and <abbr
>SGML</abbr></section><enumerate
><item
><itembody
><abbr
>CALS</abbr> is a language under <abbr
>SGML</abbr> that is widely used
in the U.S. Department of Defense<eos
/>
</itembody></item><item
><itembody
><anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.oasis<hyp
/>open.org<sol mml="mo"
/>docbook<sol mml="mo"
/>"</anchref><anchv
><quophrase
>DocBook</quophrase></anchv></anch>
is a public language under <abbr
>SGML</abbr> that
may be used by authors<eos
/>  A fall
1999 book, Norman Walsh, <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.docbook.org<sol mml="mo"
/>tdg<sol mml="mo"
/>html<sol mml="mo"
/>"</anchref><anchv
>DocBook: The Definitive Guide</anchv></anch> is available online and
in bookstores<eos
/>  Walsh maintains a web site <urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>nwalsh.com<sol mml="mo"
/></urlanch>
with a great deal of information about related topics, including an
excellent tutorial on <abbr
>XSL</abbr><eos
/>
(<bold
>Campus UNIX Network only</bold>: A copy of the
<anch
><anchref
>href="file:<sol mml="mo"
/><sol mml="mo"
/><sol mml="mo"
/>usr<sol mml="mo"
/>share<sol mml="mo"
/>local<sol mml="mo"
/>xml<sol mml="mo"
/>docbook<sol mml="mo"
/>dtd<sol mml="mo"
/>"</anchref><anchv
>DocBook <abbr
>DTD</abbr></anchv></anch> is available on the local network.)
</itembody></item><item
><itembody
>The <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.tei<hyp
/>c.org<sol mml="mo"
/>"</anchref><anchv
>TEI Consortium</anchv></anch> has emerged from
the <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.uic.edu<sol mml="mo"
/>orgs<sol mml="mo"
/>tei<sol mml="mo"
/>"</anchref><anchv
>Text Encoding
Initiative</anchv></anch> at The University of Illinois at Chicago as custodian
of the <abbr
>TEI</abbr> language definition<eos
/>  <abbr
>TEI</abbr> is another public
language that may be used by authors<eos
/>  Its modular design has led to the
creation of the <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.hcu.ox.ac.uk<sol mml="mo"
/>TEI<sol mml="mo"
/>newpizza.html"</anchref><anchv
>TEI Pizza Chef</anchv></anch> web site at Oxford<eos
/>
<parb
>A copy of the current
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.tei<hyp
/>c.org<sol mml="mo"
/>P4X<sol mml="mo"
/>"</anchref><anchv
>TEI Guidelines</anchv></anch> in HTML,
which includes
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.tei<hyp
/>c.org<sol mml="mo"
/>P4X<sol mml="mo"
/>SG.html"</anchref><anchv
><emph
>A Gentle Introduction
to <abbr
>XML</abbr></emph></anchv></anch> is available for <bold
>local browsing</bold> on the Sun network
from the file system location
<anch
><anchref
>href="file:<sol mml="mo"
/><sol mml="mo"
/><sol mml="mo"
/>usr<sol mml="mo"
/>share<sol mml="mo"
/>local<sol mml="mo"
/>xml<sol mml="mo"
/>tei<sol mml="mo"
/>P4X<sol mml="mo"
/>index.html"</anchref><anchv
><path
><sol mml="mo"
/>usr<sol mml="mo"
/>share<sol mml="mo"
/>local<sol mml="mo"
/>xml<sol mml="mo"
/>tei<sol mml="mo"
/>P4X<sol mml="mo"
/>index.html</path></anchv></anch><eos
/>
</parb></itembody></item><item
><itembody
><abbr
>HTML</abbr> is a language under <abbr
>SGML</abbr><eos
/>
</itembody></item><item
><itembody
><abbr
>XHTML</abbr> (formerly <abbr
>HTML</abbr><hyp
/>Voyager) is a language
    under <abbr
>XML</abbr>, recommended by
    the World Wide Web Consortium (<abbr
>W3C</abbr>), that is designed to be
    equivalent to <abbr
>HTML</abbr><eos
/>
    It is intended to be the base for extending <abbr
>HTML</abbr> to a
    language under <abbr
>XML</abbr><eos
/>  See:
    <display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>TR<sol mml="mo"
/>xhtml1<sol mml="mo"
/></urlanch><hsp
/>.</display>
</itembody></item><item
><itembody
><abbr
>MathML</abbr>, <emph
>Mathematical Markup Language</emph> is a client
    platform language under <abbr
>XML</abbr> that is intended to add mathematical
    functionality to the world wide web<eos
/>
    See:
    <display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>Math<sol mml="mo"
/></urlanch><hsp
/>.</display>
    The <abbr
>W3C</abbr> Recommendation for <abbr
>MathML</abbr>, version 2, points to a
    document type definition at <abbr
>W3C</abbr> for the implementation of a
    <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>TR<sol mml="mo"
/>REC<hyp
/>xml<hyp
/>names<sol mml="mo"
/>"
    </anchref><anchv
>namespace</anchv></anch><hyp
/>based extension of <abbr
>XHTML</abbr> that includes <abbr
>MathML</abbr><eos
/>
</itembody></item><item
><itembody
>The <abbr
>W3C</abbr> working draft on <emph
>Scalable Vector Graphics</emph>
    (<abbr
>SVG</abbr>) format proposes an <abbr
>XML</abbr> language for online
    graphics<eos
/>  This draft may be found along with other related information
    at <display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>Graphics<sol mml="mo"
/>SVG<sol mml="mo"
/></urlanch><hsp
/>.</display>
</itembody></item><item
><itembody
><anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.cs.rpi.edu<sol mml="mo"
/><tld
/>puninj<sol mml="mo"
/>XGMML<sol mml="mo"
/>"</anchref><anchv
><abbr
>XGMML</abbr></anchv></anch>,
    <emph
>eXtensible Graph Markup and Modeling
    Language</emph>, developed recently in New York's Capital District at
    <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.rpi.org<sol mml="mo"
/>"</anchref><anchv
>RPI</anchv></anch>,
    is an XML application based on GML which is used for graph
    description<eos
/>  See also
    <display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>xml.coverpages.org<sol mml="mo"
/>xgmml.html</urlanch><hsp
/>.</display>
</itembody></item><item
><itembody
>Any programming <emph
>assembly language</emph> in which each line
    consists of an operation code followed by parameters is
    equivalent to an <abbr
>XML</abbr> language<eos
/>
</itembody></item><item
><itembody
>The <emph
>device independent</emph> typesetting file format (<abbr
>DVI</abbr>)
    associated with the typesetting language <tex
/> (and with the program
    <quostr
>groff</quostr>) is equivalent to an <abbr
>XML</abbr> language<eos
/></itembody></item></enumerate><section
>References</section><parb
>The World Wide Web Consortium is the driving force behind <abbr
>XML</abbr><eos
/>
See:<display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>XML<sol mml="mo"
/></urlanch><eos
/></display></parb><parb
>A 1998 book on <abbr
>XML</abbr> is:
<menu
><item
><itembody
>Charles F. Goldfarb and Paul Prescod,<brk
/>
       <emph
>The <abbr
>XML</abbr> Handbook</emph>, Prentice Hall<eos
/>  A second edition
       has now appeared<eos
/></itembody></item></menu></parb><parb
>A very comprehensive catalogue of information about <abbr
>SGML</abbr>
and <abbr
>XML</abbr> may be found on the web at
<display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>xml.coverpages.org<sol mml="mo"
/></urlanch><eos
/></display></parb><parb
>An interesting and useful web site with ties to Sun MicroSystems,
one of the principal sponsors of <abbr
>XML</abbr>, is
<display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>metalab.unc.edu<sol mml="mo"
/>xml<sol mml="mo"
/></urlanch><spc
/><eos
/></display></parb><parb
>An early survey <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>TR<sol mml="mo"
/>NOTE<hyp
/>sgml<hyp
/>xml<hyp
/>971215.html"</anchref><anchv
><emph
>Comparison of <abbr
>SGML</abbr> and <abbr
>XML</abbr></emph></anchv></anch> is
available from <abbr
>W3C</abbr><eos
/></parb><parb
>Monitoring the UseNet newsgroups <urlanch
>news:comp.text.sgml</urlanch> and
<urlanch
>news:comp.text.xml</urlanch> is an excellent way to have a window
on current discussion<eos
/></parb><parb
>One may also seek answers to questions in the newsgroups when the
answers cannot be obtained locally through the HelpDesk at
<urlanch
>mailto:helpdesk<atc
/>csc.albany.edu</urlanch><eos
/>  However, one should first
make sure that the question is appropriate to the specific topic of
the newsgroup<eos
/>  For example, most questions about creating web pages
do not belong in these two newsgroups<eos
/></parb><parb
>Information about the topic of <quophrase
>mathematics and <abbr
>SGML</abbr></quophrase>
may be found at the (local) <abbr
>URL</abbr>
<display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>math.albany.edu:8800<sol mml="mo"
/>hm<sol mml="mo"
/>sgml<sol mml="mo"
/>about.html</urlanch><eos
/></display>
</parb><section
>Software Available Locally</section><parb
>The University at Albany <abbr
>UNIX</abbr> Network has several basic,
general purpose, freely available tools for working with <abbr
>SGML</abbr>
and <abbr
>XML</abbr> including:
<enumerate
><item
><itembody
>The <quophrase
>open source</quophrase> evolute, called <qquostr
>onsgml</qquostr>, of
      James Clark's <abbr
>SGML</abbr> parser <qquostr
>nsgmls</qquostr>, which is an
      application under the <quostr
>OpenSP</quostr> C<plu
/><plu
/> library<eos
/>
<parb
>      The public location for <quostr
>OpenSP</quostr> is the
    <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>openjade.sourceforge.net"</anchref><anchv
><softw
>OpenJade</softw>
    Project</anchv></anch> at <emph
>SourceForge</emph><eos
/>
    The public location for information about <quostr
>SP</quostr> is:
    <display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.jclark.com<sol mml="mo"
/></urlanch><hsp
/>.</display></parb><parb
>    Note: <qquostr
>onsgmls</qquostr>, when properly called, may be used to check
    the structural correctness of an <abbr
>HTML</abbr> document<eos
/>  At the
    University at Albany the
    command <qquostr
>validhtml</qquostr> is an interface to <qquostr
>onsgmls</qquostr> for
    this method of <abbr
>HTML</abbr> validation<eos
/>
</parb></itembody></item><item
><itembody
>Script interfaces to various Java<hyp
/>based tools of James Clark for
      handling <abbr
>XML</abbr> including:
 <description
><item
><itemlabel
><quostr
>dtdinst</quostr></itemlabel
><itembody
>a utility to generate an <abbr
>XML</abbr> instance
     that models an <abbr
>XML</abbr> document type definition given in
     <abbr
>DTD</abbr> form<eos
/>
  </itembody></item><item
><itemlabel
><quostr
>jcxt</quostr></itemlabel
><itembody
>the engine called <quophrase
>xt</quophrase> for transformations specified
     in the <abbr
>XSLT</abbr> language<eos
/>
  </itembody></item><item
><itemlabel
><quostr
>jing</quostr></itemlabel
><itembody
>a utility to validate an <abbr
>XML</abbr> instance
     against a document type definition specified in the form of either
     a <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.relaxng.org<sol mml="mo"
/>"</anchref><anchv
>Relax<hyp
/>NG schema</anchv></anch> or a
     <anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>XML<sol mml="mo"
/>Schema"</anchref><anchv
>W3C schema</anchv></anch>.
  </itembody></item><item
><itemlabel
><quostr
>trang</quostr></itemlabel
><itembody
>a utility for translations between various types
     of <abbr
>XML</abbr> document type definitions
 </itembody></item></description>
</itembody></item><item
><itembody
>David Megginson's general purpose <abbr
>SGML</abbr><hyp
/>to<hyp
/>anything processor,
    <qquostr
>sgmlspl</qquostr>, which is an application under his Perl<hyp
/>5 library
    <qquostr
>SGMLSPM</qquostr><eos
/>
<parb
>    Local documentation on <qquostr
>SGMLSPM<sol mml="mo"
/>sgmlspl</qquostr> may be
    found at:
<display
><urlanch
>file:<sol mml="mo"
/><sol mml="mo"
/><sol mml="mo"
/>usr<sol mml="mo"
/>share<sol mml="mo"
/>local<sol mml="mo"
/>xml<sol mml="mo"
/>html<sol mml="mo"
/>sgmlspm<sol mml="mo"
/>index.html</urlanch><hsp
/></display></parb><parb
>    The public location for information about <qquostr
>SGMLSPM<sol mml="mo"
/>sgmlspl</qquostr>
    for many years <emph
>was</emph>
    <display
><quostr
>http:<sol mml="mo"
/><sol mml="mo"
/>home.sprynet.com<sol mml="mo"
/>sprynet<sol mml="mo"
/>dmeggins<sol mml="mo"
/></quostr><hsp
/>.</display>
    That appears to have been superseded by
    <display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.megginson.com<sol mml="mo"
/>Software<sol mml="mo"
/></urlanch><hsp
/>;</display>
    and <quostr
>SGMLSPM<sol mml="mo"
/>sgmlspl</quostr> is also available at
    <anch
><anchref
>    href="http:<sol mml="mo"
/><sol mml="mo"
/>www.cpan.org<sol mml="mo"
/>modules<sol mml="mo"
/>by<hyp
/>authors<sol mml="mo"
/>David<und
/>Megginson<sol mml="mo"
/>"
    </anchref><anchv
>CPAN</anchv></anch><eos
/>
</parb></itembody></item></enumerate>
</parb><section
>Miscellaneous</section><subsection
>XML and Electronic Data Interchange (EDI)</subsection><parb
><abbr
>XML</abbr> offers a standard framework for the general interchange of
many kinds of data<eos
/>  The usefulness of <abbr
>XML<hyp
/>EDI</abbr> lies in the
inherent adaptability to this end of the many new tools for handling
<abbr
>XML</abbr><eos
/>  There is a substantial amount of material on this topic
in the book by Goldfarb and Prescod cited above<eos
/>  See the web site:
<display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.geocities.com<sol mml="mo"
/>WallStreet<sol mml="mo"
/>Floor<sol mml="mo"
/>5815<sol mml="mo"
/></urlanch><hsp
/>.</display></parb><parb
>The World Wide Web Consortium (W3C) has basic information about
how one might proceed to model a database in XML at
the site:
<display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>XML<sol mml="mo"
/></urlanch><hsp
/>.</display>
</parb><subsection
>Library Metadata</subsection><parb
>The Open Archives Initiative (<urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.openarchives.org<sol mml="mo"
/></urlanch>)
has developed a protocol for interoperable handling of library metadata
across the network based on records prepared under special purpose
<abbr
>XML</abbr> document types that are defined using the new notion of
<anch
><anchref
>href="http:<sol mml="mo"
/><sol mml="mo"
/>www.w3.org<sol mml="mo"
/>XML<sol mml="mo"
/>Schema"</anchref><anchv
>XML schema</anchv></anch><eos
/>
</parb><subsection
>How This Document Was Prepared</subsection><parb
>This document was prepared in Generalized Extensible <latex
/><hyp
/>like
Markup (<abbr
>GELLMU</abbr>), which is the author's user markup interface
for <abbr
>SGML</abbr> languages<eos
/>  Presently the
system, still under development, may be used to create both
<anch
><anchref
>href="general.ltx"</anchref><anchv
>standard <latex
/></anchv></anch> and
<anch
><anchref
>href="general.html"</anchref><anchv
><abbr
>HTML</abbr></anchv></anch> versions from a single
<anch
><anchref
>href="general.glm"</anchref><anchv
><latex
/><hyp
/>like source</anchv></anch>, a text file<eos
/>
The program <softw
>latex</softw> may be used to prepare a high quality
<anch
><anchref
>href="general.dvi"</anchref><anchv
>typeset version</anchv></anch> in <abbr
>DVI</abbr>
format<footnote
>Donald Knuth's Device Independent Format (<abbr
>DVI</abbr>)</footnote>
suitable for printing on this system using the program <softw
>dvips</softw>,
and a variant of <softw
>latex</softw> known as <softw
>pdflatex</softw> may be used
to prepare a different <anch
><anchref
>href="general.pdf" </anchref><anchv
>typeset version</anchv></anch> in
<abbr
>PDF</abbr> format and an alternate form of processing to <abbr
>HTML</abbr>
will produce <anch
><anchref
>href="general.xhtml"</anchref><anchv
><abbr
>XHTML</abbr></anchv></anch> extended by
<abbr
>MathML</abbr><eos
/>  For more information on this system see
<display
><urlanch
>http:<sol mml="mo"
/><sol mml="mo"
/>www.albany.edu<sol mml="mo"
/><tld
/>hammond<sol mml="mo"
/>gellmu</urlanch><hsp
/>.</display>
</parb></body></article>
