VOOZH about

URL: https://manpages.org/dtddiff

⇱ man dtddiff (1): Compare two SGML/XML DTDs


dtddiff(1) Compare two SGML/XML DTDs

SYNOPSIS


dtddiff [options] <parsed-dtd1.xml> <parsed-dtd2.xml>

DESCRIPTION

dtddiff compares two DTDs based upon the dumps generated by dtdparse. The following summarizes the typically usage of dtddiff:
 dtdparse --outfile parsed-dtd1.xml dtd1.dtd
 dtdparse --outfile parsed-dtd2.xml dtd2.dtd
 dtddiff parsed-dtd1.xml parsed-dtd2.xml > dtd.diff

Since dtddiff processes the dumps from dtdparse, a full reparse of the DTDs is avoided.

dtddiff does a structural-based comparision. Therefore, the order of declarations in the DTDs does not affect the comparison.

The output generated by dtddiff is similiar in style to a context-based diff done by the program diff(1). The following is an example of the type of output generated:

 *** DocBook 4.1 DTD
 --- DocBook 4.2 DTD
 *************** Elements Added
 --- DocBook 4.2 DTD ----
 + bibliocoverage
 + biblioid
 + bibliorelation
 + bibliosource
 + blockinfo
 + citebiblioid
 + coref
 + errortext
 + personblurb
 + personname
 + refsection
 + refsectioninfo
 + textdata
 *************** Elements Changed
 ... [snip] ...
 *** DocBook 4.1 DTD ****
 ! entrytbl ::=
 (colspec*, spanspec*, thead?, tbody)
 -(entrytbl)
 entrytbl Attributes:
 ! charoff NUTOKEN #IMPLIED
 ! colname NMTOKEN #IMPLIED
 ! cols NUMBER #REQUIRED
 ! colsep NUMBER #IMPLIED
 ! nameend NMTOKEN #IMPLIED
 ! namest NMTOKEN #IMPLIED
 ! rowsep NUMBER #IMPLIED
 ! spanname NMTOKEN #IMPLIED
 ! tgroupstyle NMTOKEN #IMPLIED
 --- DocBook 4.2 DTD ----
 ! entrytbl ::=
 (colspec*, spanspec*, thead?, tbody)
 entrytbl Attributes:
 ! charoff CDATA #IMPLIED
 ! colname CDATA #IMPLIED
 ! cols CDATA #REQUIRED
 ! colsep CDATA #IMPLIED
 ! nameend CDATA #IMPLIED
 ! namest CDATA #IMPLIED
 ! rowsep CDATA #IMPLIED
 ! spanname CDATA #IMPLIED
 ! tgroupstyle CDATA #IMPLIED
 ... [snip] ...
 *** DocBook 4.1 DTD ****
 graphic Attributes:
 ! depth NUTOKEN #IMPLIED
 ! format [Enumeration] #IMPLIED
 ! BMP, CGM-CHAR, CGM-
 ! BINARY, CGM-CLEAR,
 ! DITROFF, DVI, EPS, EQN,
 ! FAX, GIF, GIF87a, GIF89a,
 ! JPG, JPEG, IGES, PCX,
 ! PIC, PNG, PS, SGML, TBL,
 ! TEX, TIFF, WMF, WPG,
 ! linespecific
 ! scale NUMBER #IMPLIED
 ! scalefit NUMBER #IMPLIED
 ! width NUTOKEN #IMPLIED
 --- DocBook 4.2 DTD ----
 graphic Attributes:
 + contentdepth CDATA #IMPLIED
 + contentwidth CDATA #IMPLIED
 + valign [Enumeration] #IMPLIED
 + top, middle, bottom
 ! depth CDATA #IMPLIED
 ! format [Enumeration] #IMPLIED
 ! BMP, CGM-CHAR, CGM-
 ! BINARY, CGM-CLEAR,
 ! DITROFF, DVI, EPS, EQN,
 ! FAX, GIF, GIF87a, GIF89a,
 ! JPG, JPEG, IGES, PCX,
 ! PIC, PNG, PS, SGML, TBL,
 ! TEX, TIFF, WMF, WPG, SVG,
 ! linespecific
 ! scale CDATA #IMPLIED
 ! scalefit CDATA #IMPLIED
 ! width CDATA #IMPLIED
 ... [snip] ...

Lines starting with a (minus followed by a space) denote items removed. Lines starting with a (plus followed by a space) denote items added. Lines starting with a (explanation point followed by a space) denote items changed.

OPTIONS

--attributes
--noattributes
Print, or not, element attribute differences. The default is to print differences.
--content-model-expanded
--nocontent-model-expanded
Expand, or not expand, element content models during comparison. Expanded models have all parameter entities resolved. The default is to use expanded content model.
--elements
--noelements
Print, or not, element content model differences. The default is to print differences.
--general-ents
--nogeneral-ents
Print, or not, general entity differences. The default is to not print differences.
--parameter-ents
--noparameter-ents
Print, or not, parameter entity differences. The default is to not print differences.
--dump
Do a textual dump of a . When this option is specified, only a single is dumped. This is mainly used for debugging purposes.
--version
Print version and synopsis.
--help
Print synopsis and options available.
--man
Print manual page.

PREREQUISITES

File::Basename, Getopt::Long, Xml::Parser

AUTHORS

Earl Hood, <[email protected]>

COPYRIGHT AND LICENSE

See SGML::DTDParse for copyright and license information.