Layout languages (was RE: Nostradamus (was Re: FO. lists as tables))

Subject: Layout languages (was RE: Nostradamus (was Re: FO. lists as tables))
From: Andy Dent <dent@xxxxxxxxxxxxx>
Date: Mon, 25 Oct 1999 11:46:33 +0800
At 8:33 -0500 15/10/99, Reynolds, Gregg wrote:
>I look forward to comparing notes.
Me too, although I don't have a lot of time spare at present.

>Right; this is the way to go, but take my word for it, it's not easy.  Not
>only do you have to have a rigorously defined language, so that sets of
>required features can be cleanly specified and associated with levels, you
>have to get competing parties to agree on all points.  This is non-trivial.
Been there.

The OOFILE database API was designed along classic usability lines -
discussions (local & online) with focus groups etc. There were a number of
times when a given syntax was dropped because significant proportions of
the review group interpreted the syntax differently.

My goal in this design process was for an API that would drastically reduce
programmer mistakes by either:
1) match their learned model for C++ statements, and
2) avoid intuitive incorrect use of commands (this is the bit most people
fail to guard against).

Sometimes it's hard - really cool stuff has to be dropped because it
confuses too many people or, worse, can be slightly misinterpreted.

The OOFILE report-writer API was NOT developed in this manner due to having
a very tight timeframe to get it out the door, and consequently is about
average in terms of understandability. However, it has a clean OO model
underneath and most of the syntactial issues can be solved and we are
heading toward that.

The lesson here is that sometimes you can get away with a temporary syntax
that doesn't work well provided the overall model is strong enough to put a
better syntax on later.


>Anyway, it sounds like we're thinking along the same lines.  Maybe there's
>an Open Standards project in there somewhere.

I've already released the OOFILE Report Writer as part of our Open Source
project and would appreciate it if we can link our efforts. This kind of
discussion fits very nicely into the idea of improving a cross-platform
open source tool. The report writer prints and previews on Mac and Windows
(seeking Linux help) and generates RTF, HTML and XML. The XML uses CSS
syntax to represent things like text styles, our own semantics for report
layout (in XML) and something very close to XML-Data for the database
schema.

The project for which this was developed requires reports to be saved out
to a single document (even when they draw from multiple database sources)
and regenerate a single database on opening, so the user can edit data and
reflow the report.


For sample output, see:
ftp://ftp.highway1.com.au/pub/adsoftware/xml/reportOutput/

To download runnable samples see:
ftp://ftp.highway1.com.au/pub/adsoftware/oofile/demo/

Or to see the OOFILE Open Source manifesto visit:
http://www.oofile.com.au/

Andy Dent BSc MACS AACM, Software Designer, A.D. Software, Western Australia
OOFILE - Database, Reports, Graphs, GUI for c++ on Mac, Unix & Windows
PP2MFC - PowerPlant->MFC portability
http://www.oofile.com.au/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread