The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

dtd2html - Generate a HTML documentation from a DTD

SYNOPSIS

dtd2html [-b | -f | -d] [-C | -M] [-HZ] [-o filename] [-s style] [-t title] [-x 'example1.xml example2.xml ...'] [-l language | -p path] file.xml

OPTIONS

-b

Enable the book mode generation.

-C

Suppress all comments.

-D

Suppress date generation.

-d

Generate a clean DTD (without comment).

-f

Enable the frame mode generation.

-H

Disable generation of href's in comments.

-h

Display help.

-l

Specify the language of templates ('en' is the default).

-M

Suppress multi comments, preserve the last.

-o

Specify the output.

-p

Specify the path of templates.

-s

Generate an external style.css file.

-t

Specify the title of the HTML files.

-v

Display Version.

-x

Include a list of XML files as examples.

-Z

Delete zombi element (e.g. without parent).

DESCRIPTION

dtd2html is a front-end for XML::Handler::Dtd2Html and its subclasses. It uses them to generate HTML documentation from DTD source.

Because it uses XML::Parser and an external DTD is not a valid XML document, the input source must be an XML document with an internal DTD or an XML document that refers to an external DTD.

The goal of this tool is to increase the level of documentation in DTD and to supply a more readable format for DTD.

It is a tool for DTD users, not for writer.

All comments before a declaration are captured.

All entity references inside attribute values are expanded.

This tool needs XML::SAX::Base, XML::SAX::Exception, XML::SAX::Expat, XML::Parser and HTML::Template modules.

Comments

XML files (and DTD) can include comments. The XML syntax is :

 <!-- comments -->

All comments before a declaration are captured (except with -M option). Each comment generates its own paragraph <p>.

Standard HTML

You can embed standard HTML tags within a comment. However, don't use tags heading tags like <h1> or <hr>. dtd2html creates an entire structured document and these structural tags interfere with formatting of the generated document.

So, you must use entities &lt; &gt; &amp; within a comment.

dtd2html Tags

dtd2html parses tags that are recognized when they are embedded within an XML comment. These doc tags enable you to autogenerate a complete, well-formatted document from your XML source. The tags start with an @. A tag with two @ forces a link generation if the option -H is set.

Tags must start at the beginning of a line.

The special tag @BRIEF puts its value in 'Name' section (in book mode).

The special tag @INCLUDE allows inclusion of the content of an external file.

 <!--
   comments
   @Version : 1.0
   @INCLUDE : description.txt
   @@See Also : REC-xml
 -->

The special tag @HIDDEN don't put the data in the documentation.

The special tag @TITLE before <!DOCTYPE> has the same effect as the option -t.

The special tag @SAMPLE allows inclusion of a XML fragment from an external file.

 <!--
   comments
   @SAMPLE ex2 : ex2.xml
 -->

The special tags are case insensitive.

HTML Templates

Since version 0.30, HTML design and Perl programming are decoupling. And a language switch option is available.

So, translation of the templates are welcome.

SEE ALSO

XML::Handler::Dtd2DocBook, dtd2db

AUTHOR

Francois PERRAD, francois.perrad@gadz.org

COPYRIGHT

(c) 2002-2003 Francois PERRAD, France. All rights reserved.

This program is distributed under the Artistic License.