[comp.text.sgml] Writing SGML Applications

cape@npdiss1.StPaul.NCR.COM (Robert Cape) (12/09/90)

I've begun the task of writing an sgml application.  We have Sobemap's
(aka Yard) SGML parser.  In an appendix, they show a small sample sgml
application which uses lex and yacc to parse the canonical output from
their parser of an sgml instance.  The lex and yacc stuff is linked with
user code to perform the necessary transformations.

What I'd like to see is a discussion by others who are writing sgml
applications

 - What are people using for sgml parsers?
 - How are they creating their applications?
 - What design goals do people have in mind?
   - Portability across platforms?
   - Portability across OS's?
   = Speed?
   - Multiple passes?
 - Trade-offs between using lex (or flex) and yacc (or bison) and
   generalized translators? 
 - How do the various sgml parsers differ in their canonical output?
 - What are the implications?
 - Etc., etc.

Thanks,

Bob Cape

robert.cape@stpaul.ncr.com
 

philsp@microsoft.UUCP (Phil SPENCER) (12/29/90)

I have a little trouble figuring out what people mean when they
say they are writing an SGML application, but I guess that is
what I am doing.  I use SGML as an archive format for text
databases to be put online.

SGML is very useful for this.  I can specify a lot of complexity
in my Data Dictionary and make it very easy to build a useful
online database.  I guess my SGML application would be taking
this SGML instance and turning into an online database.

I use the XTRAN parser from Software Exoterica to turn my
SGML into another format.  XTRAN is a fairly powerful language
for working with SGML.  Our first traslation was writen in C,
but it quickly became hard to maintain.  Any change to the DTD
meant rewriting C code.  XTRAN is a data driven language and
changes to the DTD don't require much change to the XTRAN.

I do think that using SGML will help in making products across
platorms and OS.  The SGML is platform independant.  The traslation
creates the platform dependancies.  Hopefully we will eventually
have independant online databases, but not yet.

I would be interested in hearing what other people are doing
with SGML.  I was at SGML '90 and found that a lot of people 
were thinking about how SGML could help there publishing
system.  Well, we are doing that now.  And overall I think
SGML was a smart decision.

Phil Spencer
Production Eng.
Multimedia Publishing
Microsoft Corp.

Oh, yea IMHO.