.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "DTDPARSE 1p" .TH DTDPARSE 1p "2021-01-09" "perl v5.32.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" dtdparse \- Generate an XML representation of an SGML or XML DTD. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& dtdparse [options] [dtdfile] .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBdtdparse\fR parses an \s-1XML\s0 or \s-1SGML DTD\s0 and prints an \s-1XML\s0 representation of it. The \s-1XML\s0 version can be further processed by other tools to aid in the analysis and documentation of the \s-1DTD.\s0 .PP The first non-option-related argument provided on the command-line specifies the file to parse. If no filename is given, then the \&\s-1DTD\s0 is read from standard input. .PP The generated \s-1XML\s0 document is printed to standard output unless the \f(CW\*(C`\-\-output\*(C'\fR option is specified. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\-\-catalog " 4 .IX Item "--catalog " Specify catalog files to parse for resolving external entity references. This option can be specified multiple times. .Sp \&\fB\s-1NOTE:\s0\fR Currently, only \s-1SGML\s0 Open Catalog format is supported. \&\s-1XML\s0 Catalog support is not implemented (yet). .IP "\-\-debug" 4 .IX Item "--debug" Extra debugging output. This option can be specified multiple times to increase the amount of output. .Sp Debugging output is sent to standard error. .IP "\-\-declaration " 4 .IX Item "--declaration " Specify the \s-1SGML\s0 declaration. The \s-1SGML\s0 declaration is parsed to determine the type of \s-1DTD\s0 being parsed, \s-1XML\s0 or \s-1SGML.\s0 The key parts of the \s-1SGML\s0 declaration examined are the \s-1NAMECASE\s0 and \s-1CHARSET\s0 directives to determine the \s-1DTD\s0 type. .Sp If no \s-1SGML\s0 declaration is available, the \f(CW\*(C`\-\-xml\*(C'\fR, \&\f(CW\*(C`\-\-namecase\-general\*(C'\fR, and \f(CW\*(C`\-\-namecase\-entity\*(C'\fR options can be used. .IP "\-\-namecase\-general" 4 .IX Item "--namecase-general" .PD 0 .IP "\-\-nonamecase\-general" 4 .IX Item "--nonamecase-general" .PD In the absence of an \s-1SGML\s0 declaration, these options specifiy if \f(CW\*(C`NAMECASE GENERAL\*(C'\fR is \s-1YES\s0 or \s-1NO.\s0 The default is \s-1YES\s0 unless \&\f(CW\*(C`\-\-xml\*(C'\fR is specified. .IP "\-\-namecase\-entity" 4 .IX Item "--namecase-entity" .PD 0 .IP "\-\-nonamecase\-entity" 4 .IX Item "--nonamecase-entity" .PD In the absence of an \s-1SGML\s0 declaration, these options specifiy if \f(CW\*(C`NAMECASE ENTITY\*(C'\fR is \s-1YES\s0 or \s-1NO.\s0 The default is \s-1NO.\s0 .IP "\-\-output " 4 .IX Item "--output " Specifies the filename to send \s-1XML\s0 output. .IP "\-\-public\-id " 4 .IX Item "--public-id " The \s-1DTD\s0's public \s-1ID.\s0 .IP "\-\-system\-id " 4 .IX Item "--system-id " The \s-1DTD\s0's system \s-1ID.\s0 .IP "\-\-title " 4 .IX Item "--title <title>" Set the title of the \s-1DTD.\s0 .IP "\-\-unexpanded" 4 .IX Item "--unexpanded" .PD 0 .IP "\-\-nounexpanded" 4 .IX Item "--nounexpanded" .PD Include, or do not include, unexpanded content models in generated \s-1XML.\s0 By default, unexpanded content models are included. .Sp It is common for \s-1DTD\s0 authors and maintainers to use parameter entities within content models. When this option is enabled, dtdparse will include a version of content models with parameter entities not expanded. .IP "\-\-verbose" 4 .IX Item "--verbose" .PD 0 .IP "\-\-noverbose" 4 .IX Item "--noverbose" .PD Print parsing progress. By default, this option is enabled. Verbose output is sent to standard error. .Sp If \f(CW\*(C`\-\-debug\*(C'\fR is specified, then this option is automatically enabled. .IP "\-\-xml" 4 .IX Item "--xml" .PD 0 .IP "\-\-noxml" 4 .IX Item "--noxml" .PD In the absence of an \s-1SGML\s0 declaration, this option specifies if the \s-1DTD\s0 is an \s-1XML DTD\s0 or an \s-1SGML DTD\s0 (the default is \-\-noxml). .IP "\-\-version" 4 .IX Item "--version" Print version and synopsis. .IP "\-\-help" 4 .IX Item "--help" Print synopsis and options available. .IP "\-\-man" 4 .IX Item "--man" Print manual page. .SH "SEE ALSO" .IX Header "SEE ALSO" dtdformat, dtddiff, dtdflatten .PP See SGML::DTDParse for an overview of the DTDParse package. .SH "PREREQUISITES" .IX Header "PREREQUISITES" \&\fBGetopt::Long\fR, \&\fBText::DelimMatch\fR .SH "AVAILABILITY" .IX Header "AVAILABILITY" <\fIhttp://dtdparse.sourceforge.net/\fR> .SH "AUTHORS" .IX Header "AUTHORS" Originally developed by Norman Walsh, <ndw@nwalsh.com>. .PP Earl Hood <earl@earlhood.com> picked up support and maintenance. .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" See SGML::DTDParse for copyright and license information.