Re: wish list

Ingo Macherius (
Sat, 29 Mar 1997 04:19:06 +0100 (MET)

Message-Id: <>
Subject: Re: wish list
To: (Steven Champeon)
Date: Sat, 29 Mar 1997 04:19:06 +0100 (MET)
In-Reply-To: <> from "Steven Champeon" at Mar 28, 97 03:42:09 pm
From: Ingo Macherius <>


> Well, that can get pretty bulky after a while. What I'd like to
> be able to do is something like this:

> <!ENTITY "myf6" "<font face=3DTimes size=3D6>">
> <BODY ...>
> ...
> %myf6; text </font>

> Am I right out to lunch here, or would this be hard to implement?

It is, but it is already done by James Clark :) Get sp-1.1.1 from=20 and have a look at the "sgmlnorm" utility.
It reads in your document and consults a catalog. It=B4s not too tricky
to build your own library of entities. The output will be ordinary HTML,
even better: valid HTML.


1) set up a catalog like this
PUBLIC  "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML" ISOlat1.ent
PUBLIC "-//W3C//DTD HTML 3.2//EN" local.dtd

2) define your local DTD like this

        <!ENTITY % html.dialect   SYSTEM  "html.dtd">
        <!ENTITY % local.entities SYSTEM "local.entities.dtd">

and set up entities and parameter entities. The latter are nice as "#ifde=
construct. sgmlnorm can be called passing a command line option to set
a particular parameter entity. Tricky things can be constructed from this.

3) Mark up your enties unsing *any* SGML construct. Set up entity librari=
4) Make some control (e.g. script or .bat) to read marked up pages from=20
directory A and write HTML to dircetory B by redirecting STDIN and STDOUT
trough sgmlnorm.

I made several medium-size projects that only use sgmlnorm. It's especial=
nice to create parts of your local DTD from database entries etc. It's fr=
it works *now* and can be reused if XML succeds.

Snail : Ingo Macherius // L'Aigler Platz 4 // D-38678 Clausthal-Zellerfel=
Mail  : WWW:
=3DBEST (Frank Zappa)