Re: [HACKERS] XML Docbook

Lists: pgsql-docspgsql-hackers
From: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
To: pgsql-hackers <pgsql-hackers(at)postgreSQL(dot)org>
Subject: XML Docbook
Date: 2003-11-14 08:26:19
Message-ID: 20031114082619.GA25147@zf.jcu.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers


Hi,

what use pure XML Docbook (non-SGML) for 7.5 PostgreSQL docs?

XML advantage:

- more clean and simple conversion into printable
formats by FO (Formatting Objects),
- needn't huge TeX stuff (!),
- Java based XSLT/FO processors like FOP (support PDF, PCL, PS, SVG, Print,
AWT, MIF and TXT),
- conversion to HTML/MAN/etc by xsltproc,
- XML based reference docs is usable for example in clients programs as
standard help, because integrate XML parser into program is more simple and
usual than SGML parser.

I think the current docs build system is usable for normal user only if he wants
to generate HTML docs, but for example it's useless if he wants PDF output...

For example you can compare our current doc/src/sgml/Makefile with following
code for XML conversion:

pdf:
fop -xsl /path/to/stylesheet/xsl/fo/docbook.xsl -xml book.xml -pdf book.pdf

ps:
fop -xsl /path/to/stylesheet/xsl/fo/docbook.xsl -xml book.xml -ps book.ps

html:
xsltproc -o htmldir/ /path/to/stylesheet/html/chunk.xsl book.xml

man:
xsltproc /path/to/stylesheet/manpages/docbook.xsl ref.xml

Comments?

Karel
--
Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
http://home.zf.jcu.cz/~zakkr/


From: Jean-Michel POURE <jm(at)poure(dot)com>
To: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: XML Docbook
Date: 2003-11-14 08:57:16
Message-ID: 200311140957.16288.jm@poure.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers

Le Vendredi 14 Novembre 2003 09:26, Karel Zak a écrit :
> What use pure XML Docbook (non-SGML) for 7.5 PostgreSQL docs?

Dear Karel,

For information, how do you plan to translate XML Docbook format?

Is there an easy way to parse XML Docbook and import/export the text into
Gettext format? I was thinking using PHP, but I would prefer using a legacy
script. Do you know any?

Best regards,
Jean-Michel Pouré


From: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
To: Jean-Michel POURE <jm(at)poure(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: XML Docbook
Date: 2003-11-14 09:19:05
Message-ID: 20031114091905.GC25147@zf.jcu.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers


On Fri, Nov 14, 2003 at 09:57:16AM +0100, Jean-Michel POURE wrote:
> Le Vendredi 14 Novembre 2003 09:26, Karel Zak a écrit :
> > What use pure XML Docbook (non-SGML) for 7.5 PostgreSQL docs?
>
> Dear Karel,
>
> For information, how do you plan to translate XML Docbook format?

KDE project use XML docbook and I think they have same problems and
maybe already solutions too :-)

http://i18n.kde.org/translation-howto/doc-translation.html

Karel

--
Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
http://home.zf.jcu.cz/~zakkr/


From: Jean-Michel POURE <jm(at)poure(dot)com>
To: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: XML Docbook
Date: 2003-11-14 09:30:00
Message-ID: 200311141030.00236.jm@poure.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers

Le Vendredi 14 Novembre 2003 10:19, Karel Zak a écrit :
> KDE project use XML docbook and I think they have same problems and
> maybe already solutions too :-)
> http://i18n.kde.org/translation-howto/doc-translation.html
> Karel

Dear Karel,

Nice link with detailed information.
This is a valid reason for moving to XML docbook.

Cheers, Jean-Michel


From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
Cc: pgsql-hackers <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Re: XML Docbook
Date: 2003-11-14 09:32:10
Message-ID: Pine.LNX.4.44.0311141030380.3585-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers

Karel Zak writes:

> XML advantage:

All very true.

XML disadvantage:

- no arbitrary parameter entities

If someone can solve this for me, I'm ready to switch.

Follow-up to pgsql-docs(at)postgresql(dot)org please.

--
Peter Eisentraut peter_e(at)gmx(dot)net


From: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Re: XML Docbook
Date: 2003-11-14 09:45:48
Message-ID: 20031114094548.GE25147@zf.jcu.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers


On Fri, Nov 14, 2003 at 10:32:10AM +0100, Peter Eisentraut wrote:
> XML disadvantage:
>
> - no arbitrary parameter entities

I unsure if I understand, can you show some example of this problem?

I think there is a lot of XML Docbook docs in a lot of projects and I
will wonder if in the PostgreSQL docs is something special what disable
use XML instead SGML.

> Follow-up to pgsql-docs(at)postgresql(dot)org please.

Hmm.. I must subscribe first :-)

Karel

--
Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
http://home.zf.jcu.cz/~zakkr/


From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
Cc: pgsql-docs(at)postgresql(dot)org
Subject: Re: [HACKERS] XML Docbook
Date: 2003-11-14 19:16:30
Message-ID: Pine.LNX.4.44.0311142008210.5327-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers

Karel Zak writes:

> On Fri, Nov 14, 2003 at 10:32:10AM +0100, Peter Eisentraut wrote:
> > XML disadvantage:
> >
> > - no arbitrary parameter entities
>
> I unsure if I understand, can you show some example of this problem?

SGML and XML allow you to disable certain parts of your document, by
writing

<![IGNORE[
<stuff>...</stuff>
]]>

The opposite of IGNORE is INCLUDE. Think of this as a preprocessing
stage. You can also make the IGNORE/INCLUDE variable, by declaring a
"parameter entity", think of it as a variable. This is declared like
this:

<!entity % myvar "IGNORE">

Then you can write

<![%myvar;[
<stuff>...</stuff>
]]>

and toggle the myvar somewhere. For example, OpenJade allows you to do
this on the command line.

We use this feature to generate files like INSTALL and HISTORY from the
documentation sources. The files are almost like the corresponding
chapters, but in some cases we use this as a kind of if/then/else to
adjust the content for the different contexts. For example, you cannot
have links in INSTALL, because the rest of the documentation is not there
to link to.

Now, the problem in XML is that it no longer allows arbitary parameter
entities; that is, you can only hardcode IGNORE or INCLUDE, but not toggle
it anywhere. So there is no straightforward conversion path for our
requirements.

If anyone can come up with a good solution for this problem, we can
convert to DocBook XML the next day.

--
Peter Eisentraut peter_e(at)gmx(dot)net


From: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-docs(at)postgresql(dot)org
Subject: Re: [HACKERS] XML Docbook
Date: 2003-11-20 08:37:05
Message-ID: 20031120083704.GA1648@zf.jcu.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers

On Fri, Nov 14, 2003 at 08:16:30PM +0100, Peter Eisentraut wrote:
> Karel Zak writes:
>
> > On Fri, Nov 14, 2003 at 10:32:10AM +0100, Peter Eisentraut wrote:
> > > XML disadvantage:
> > >
> > > - no arbitrary parameter entities
> >
> > I unsure if I understand, can you show some example of this problem?
>
> SGML and XML allow you to disable certain parts of your document, by
> writing
>
> <![IGNORE[
> <stuff>...</stuff>
> ]]>
>
> The opposite of IGNORE is INCLUDE. Think of this as a preprocessing
> stage. You can also make the IGNORE/INCLUDE variable, by declaring a
> "parameter entity", think of it as a variable. This is declared like
> this:
>
> <!entity % myvar "IGNORE">
>
> Then you can write
>
> <![%myvar;[
> <stuff>...</stuff>
> ]]>

One Czech XML guru suggest me use for this "profiling". For more
information see:

http://www.sagehill.net/docbookxsl/Profiling.html

An example:

<para os="windows">WinText</para>

and when you apply XSL template you can use template with "profile-"
prefix (profile-docbook.xsl, profile-chunk.xsl) and define option
profile.os="windows".

The other thing are INCLUDEs, I think best way is use W3C's <xinclude>.
The "xsltproc" support it (--xinclude option) and for others tools
which doesn't support it you can use common tool "xmllint" that merge
all to one temporary file:

xmllint --xinclude --postvalid book.xml tmp.xml
fop -xsl /path/file.xsl -xml tmp.xml -pdf book.pdf
rm -f tmp.xml

Comments?

Karel

--
Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
http://home.zf.jcu.cz/~zakkr/


From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
Cc: pgsql-docs(at)postgresql(dot)org
Subject: Re: [HACKERS] XML Docbook
Date: 2003-11-20 09:33:14
Message-ID: Pine.LNX.4.44.0311201031350.25428-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers

Karel Zak writes:

> One Czech XML guru suggest me use for this "profiling". For more
> information see:
>
> http://www.sagehill.net/docbookxsl/Profiling.html

Sounds like a plan.

I think as a first step we should upgrade to SGML DocBook 4.2. Anyone
want to dig out the old patch for that?

--
Peter Eisentraut peter_e(at)gmx(dot)net


From: Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-docs(at)postgresql(dot)org
Subject: Re: [HACKERS] XML Docbook
Date: 2003-11-20 16:54:18
Message-ID: 20031120165418.GB9516@zf.jcu.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-docs pgsql-hackers

On Thu, Nov 20, 2003 at 10:33:14AM +0100, Peter Eisentraut wrote:
> Karel Zak writes:
>
> > One Czech XML guru suggest me use for this "profiling". For more
> > information see:
> >
> > http://www.sagehill.net/docbookxsl/Profiling.html
>
> Sounds like a plan.
>
> I think as a first step we should upgrade to SGML DocBook 4.2. Anyone
> want to dig out the old patch for that?

Is it needful upgrade to SQGML 4.2 and next to XML? Why not directly to
XML?

I can try do it (on December or soon if I will have time). I already
overhaul some docs from SGML to XML.

Karel

--
Karel Zak <zakkr(at)zf(dot)jcu(dot)cz>
http://home.zf.jcu.cz/~zakkr/