Publican::XmlClean(3pm)

NAME
Publican::XmlClean - A module to reformat XML to Publican standards

SYNOPSIS
    use Publican::XmlClean;

    my $cleaner = Publican::XmlClean->new( { clean_id => 1 } );

    foreach my $xml_file ( sort(@xml_files) ) {
        $cleaner->process_file( { file => $xml_file, out_file => $xml_file } );
    }

DESCRIPTION
Publican::XmlClean tidies XML formatting and filters structure based on input rules.

INTERFACE

  new
Create a new Publican::XmlClean object.

  print_known_tags
Print a list of tags that have had their output QA'd.

  prune_xml($node)
Remove unwanted nodes. i.e. 'profile' in DocBook speak.

  Clean_ID
Rename ID's and update xrefs.

If this node has a title as a child set it's ID else remove the ID

  print_xml
Print out utf8 XML files

Have to output xml/DTD header

  my_as_XML
Traverse tree and output xml as text. Overrides traverse ... evil stuff.

  validate_tables
Ensure Tables comply to requirements not enforceable in XML validation.

1. tgroup attribute cols must match the number of entries in every row.

  process_file
Create XML::TreeBuilder object and perform operations.

  set_unique_ids
Set unique ids for every nodes which have id

  create_db
Create a database to track the max unique id

DIAGNOSTICS

"unknown args %s"
    All subs with named parameters will return this error when unexpected named arguments are provided.

"%s is a required argument"
    Any sub with a mandatory parameter will return this error if the parameter is undef.

"Could not open %s for output!"
    The named file could not be opened.

"Can't calculate image size of %s"
    Images are automatically scaled if thy are to wide, this check could not be performed due to either access permissions or file weirdness.

CONFIGURATION AND ENVIRONMENT
Publican::XmlClean requires no configuration files or environment variables.

DEPENDENCIES
Carp version XML::TreeBuilder Text::Wrap Config::Simple Publican File::Path Term::ANSIColor Cwd

INCOMPATIBILITIES
None reported.

BUGS AND LIMITATIONS
No bugs have been reported.

Please report any bugs or feature requests to "publican-list@redhat.com", or through the web interface at <https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Publican&component=publican>.

AUTHOR
Jeff Fearn "<jfearn@redhat.com>"