Szymon Nieradka wrote:
> Hi,
>
> I'm trying to make a docbook document template. I would like to make
> my life easier and instead of writing:
>
> <glosslist>
> <glossentry>
> <glossterm>C</glossterm>
> <glossdef>
> <para>
> A procedural programming language invented by K&R.
> </para>
> </glossdef>
> </glossentry>
> <!-- ... -->
> </glosslist>
>
> I'd like to write:
>
> <glosslist>
> <glossEntry term="C">
> A procedural programming language invented by K&R.
> </glossEntry>
> <!-- ... -->
> </glosslist>
>
> (of course thats only example of use)
Why use XSL?
Just redefine the elements involved: that's why DocBook is modular.
dbglossmod.dtd
--------------
<!ENTITY % docbookdtd SYSTEM "/your/path/to/the/docbookx.dtd">
<!ENTITY % glosslist.element "IGNORE">
<!ENTITY % glosslist.attlist "IGNORE">
<!ENTITY % glossentry.element "IGNORE">
<!ENTITY % glossentry.attlist "IGNORE">
%docbookdtd;
<!ELEMENT glosslist %ho; (glossentry+)>
<!ELEMENT glossentry %ho; (%para.char.mix

*>
<!ATTLIST glossentry term CDATA #REQUIRED>
test.xml
--------
<?xml version="1.0"?>
<!DOCTYPE article SYSTEM "dbglossmod.dtd">
<article>
<glosslist>
<glossentry term="C">A procedural programming language invented by
K&R.</glossentry>
</glosslist>
</article>
///Peter
--
XML FAQ:
http://xml.silmaril.ie/