OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Re: [docbook-apps] Re: Relax-NG -> DTD with Trang?

Norman Walsh <ndw@nwalsh.com> writes:

> / Stephane Bortzmeyer <bortzmeyer@nic.fr> was heard to say:
> | I use trang to produce DTD from Relax-NG schemas but it fails when the
> | Relax-NG schema is a Docbook extension of the Docbook schema provided
> | with nxml:
> There is a tool chain that produces a DTD from the DocBook NG schema.
> It's in CVS but isn't very well described yet. If you're ambitious,
> give it a try and I'll try to be helpful.

Here are some minimal instructions:

  0. Make sure that you have Saxon, Trang, and Perl installed.

      - currently, the saxon.jar file (or a symlink to it) needs
        to be in one of the following locations:


        NOTE: There is an alternate build setup that just checks
              to see if saxon is in your CLASSPATH; details on
              using that are at end of this message.

      - if you have either the trang binary installed or trang.jar
        installed and in your CLASSPATH, the build will find it.

  1. Change to whatever base directory it is where you want to set
     up your DocBook cvs working directory; for example:

       cd /tmp

  2. Log in via anonymous CVS:

       cvs -d:pserver:anonymous@cvs.sf.net:/cvsroot/docbook \

     At the "CVS Password:" prompt, just hit the Enter/Return key
     (blank password). If you see an error message about a missing
     "~/.cvspass" file, just ignore it.

  3. Check out the "docbook" and "cvstools" modules.

       cvs -z3 -d:pserver:anonymous@cvs.sf.net:/cvsroot/docbook \
         co -P docbook cvstools

  4. Open the cvstools/Makefile.incl file and change the value of
     the CVSROOT variable to the absolute path of the base
     directory where you did your checkout -- that is, the parent
     directory of the cvstools/ directory; for example:


     NOTE: If you use the alternate build setup, you don't need to
           do this step but instead need to set the DOCBOOK_CVS
           environment variable, like this:

             export DOCBOOK_CVS

           More details at the end of this message.

  5. Change to docbook/relaxng/docbook directory and run "make".

       cd docbook/relaxng/docbook

     That may take a few minutes to run; when it completes, you'll
     have following files in the docbook/relaxng/docbook directory:


     Those are all "flattened" standalone schemas. The dbforms.*
     ones are supersets that contain html:* elements for
     including HTML forms markup in your DocBook sources.

If you have problems or questions about getting the build to work,
please post to docbook-apps.

Alternate cvstools build setup
I have made some changes to the cvstools build setup that attempt
to make it more portable. The files required for running it are in
a separate cvs branch. You can get them by doing this:

  1. cd cvstools
  2. cvs update -r build MANIFEST.build
  3. rm -rf `cat MANIFEST.build`
  4. cvs update -r build `cat MANIFEST.build`

Then set the value of the DOCBOOK_CVS variable to the absolute
path to the parent directory of the cvstools directory, and do
steps 1 to 3 and step 5 above (skip step 4).



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]