http:www.albany.eduhammondgellmumuiOctober 22, 1999William F. HammondThe Idea of a Markup Interface for XMLUniv at Albany: W. F. Hammond: The GELLMU Archivesetlengthtopmargin30bpsetlengthtextheight696bpThe Value of a Like Markup User Interface
for XMLA markup user interface (MUI) for an XML language
(formally XML application) is a markup language
that admits a welldefined translation to the XML languageRecent discussions in news:comp.text.tex show that at least
two of us are thinking about MUIs for like XML
languages Jonathan Fine has been working on a rofflike
MUI that he calls Active TeX, and I have been
working on a like MUI that I call GELLMUAs I use the acronym MUI, I do intend it to be reminiscent of
the acronym GUI for graphical user interface Both
GUIs and MUIs have the intention of making life easier,
or perhaps at least more familiar, for some authors An MUI,
unlike typical GUIs, has the possibility of giving the author
full and rigorous control over contentFurthermore, an MUI in the style of a preexisting
nonXML markup offers a convenient avenue for prototyping a new
XML language to model the markup practice in the preexisting
markupBeyond that, it offers a route for conversion of legacy archives in
the preexisting markup to XML languages with minimal human
interventionPlease allow me to say a bit more about what I have in mind for
GELLMU
The Basic GELLMU Processing DesignThe things that I have on hand, aside from are:
- GNU Emacs, version 20 (I believe that version 19 is OK.)
- James Clark's nsgmls, a part of his SP
My processing setup is the following:
Syntactic translation from like markup to SGML My Elisp processor, which can
be run interactively in GNU Emacs or in batch mode, performs
syntactic translation to convert like markup to an SGML
language (formally, application) The syntactic translator is largely
ignorant of command names Whatever command names are used become the
names of SGML elements There is a standard way to convert
multiple argumentoption sequences
This processing stage traps syntax errors (It will fail to detect an
even number of missing characters; but this error will
show in the next stage.)
Validating parse of the SGML language At the
validation stage the difference between SGML and XML is
significant if one wants to have math mode be a global
toggle since that may be modeled robustly only using SGML
exclusions
A validating parse is made using nsgmls
Of course, the language definition, i.e., SGML application
definition, is crucial It is contained in an SGML declaration
and in an SGML document type definition (DTD)The language definition that I am using is the heart of my personal
production system But I regard it only as didactic in the larger
scheme of things Others will certainly want things that I do not
wantAs far as it goes, it models rather closely in some ways and
rather loosely in other ways Where it departs from close modeling,
the reason is usually related to having a document structure that is
not printcentricThe validating parse traps errors in language use
Downtranslation to XML This is done with the program
called sx in the family of SP processors
While it is possible to recover an equivalent SGML document
from the downtranslated XML, it is not possible under the
XML umbrella to have as precise a language definition as
under the wider SGML umbrella That said, either form may
be run through a processor that serves to enforce a tighter language
definition
SGML processing This can go anywhere that is sane for the language definition
One can use any programming language, but it helps to have a basic
SGML library on hand I am using David Megginson's
SGMLS.pm, a Perl 5 library, and its interface
sgmlspl
In my personal production system I routinely format GELLMU
articles for both and HTML Invalid
HTML and error messages from represent bugs in my
processors, which I always repair as soon as possible There may be
box size complaints from ; they represent authoring content
errors These two formatters work either on the SGML or the
XML version of an articleAt present my personal production language definition is not fully
uptospeed for journal articles nor for translation to
XHTMLwithMathML, but it is serving me well for my classes It gives
me a sane way to have course handouts and web offerings in a
bulletproof way from a single source At this time I simply cannot
assume that more than about a third of my students have easy access to
PDF readers So I feel constrained to give them simple
HTML with very limited pseudoTeX for mathOther formattings for GELLMU article that should be possible
include translations to (1) DocBook, (2) TEI, and (3) Texinfo, though
suboptimally so long as math is not available These are not small
jobs, and I may never undertake any of them (Any project that
undertakes to format an XML language in Texinfo should give
serious consideration first to modeling Texinfo as an XML
It would also be desirable to minimize Info bifurcation in
XTexinfo and to provide math for XTexinfo.)If a time arrives when I can assume that threefourths of my students
have outofthebox browsers for XHTMLwithMathML, then I should be
able to format the original GELLMU source directly for that
if by that time I am not able to squeeze it out of carefullyset
LaTeX4 (I exaggerate somewhat In principle, I need to provide
some math symbol declarations in the sources, and math symbol
declaration handling is not yet present in my setup.)
This document was prepared as a GELLMU article
A copy of the HTML version of this document is available
on the web at
http:www.albany.eduhammondgellmumui
along with a full list of anchored versions as follows: