As an application for generating XML, HTML and other marked-up documents, and as programming language, the GLOSS system incorporates some interesting ideas and has some noteworthy features, which are listed here for the technically-minded.
A well as being able to probram modes in MV files, the
standard MV files are fully modular in themselves. An application
typically starts by writing an MV that is a selection of standard
modes. Amongst the standard modes are modes for
dublin-core metadata for HTML, sectioning and numbering in HTML,
presentation MathML and extensions, and modes for writing modes
themselves. Modularity is achieved by a providing redefinable
hooks to important public
modes. There are some interesting
theoretical issues conected with this style of programming.
A possible weakness of XML and HTML is that text often has to be repeated. For example, the rather common text
<a href="http://www.mysite.com/mypage.html">http://www.mysite.com/mypage.html</a>
involves repetition of a possibly rather long URL. Even the close-tags can be long enough to make significant delays and possible errors in direct authoring. One of the aims of GLOSS is to provide mechanisms to reduce or eliminate these delays or errors.
It might be argued that plain standards-compliant (X)HTML is a poor choice for
academic work because it does not provide structured text with section-numbering
etc. It is true that other formats are available that are more expressive
in some areas (TEI, DOCBOOK...) However, the GLOSS-html modules that
provide sectioning, theorems, proofs, and various other constructs
do so in an elegant way (using HTML's class
attribute)
and are fully XHTML standards-compliant and can be transformed easily with
CSS stylesheets.
I particularly like TEI, and would like to see TEI+MathML being used as a standard format. But there are some technical difficulties and the learning-curve is steeper, so I use XHTML at the moment. I would like to see a TEI option available at a later stage.
Editing XML using the standard DOM is sometimes a problem as an XML dataset
does not uniquely determine its textual representation. Many XML editors
use a complex non-standard extension of the DOM to achieve their goals.
GLOSS uses a special xmlrepresentation
DTD, which allows the same aims
to be achieved within the standards and with much more flexibility. This
could in principle be a useful tool in other XML editors and processors.
This page is copyright. Web page design and creation by GLOSS.