Provided by: libxmltv-perl_1.1.2-1_all bug

NAME

       XMLTV::ValidateFile - Validates an XMLTV file

DESCRIPTION

       Utility library that validates that a file is correct according to
       http://wiki.xmltv.org/index.php/XMLTVFormat.

EXPORTED FUNCTIONS

       All these functions are exported on demand.

       LoadDtd
           Load the xmltv dtd. Takes a single parameter which is the name of the xmltv dtd file.

           LoadDtd must be called before ValidateFile can be called.

       ValidateFile
           Validate that a file is valid according to the XMLTV dtd and try to check that it
           contains valid information. ValidateFile takes a filename as parameter and optionally
           also a day and an offset and prints error messages to STDERR.

           ValidateFile returns a list of errors that it found with the file. Each error takes
           the form of a keyword:

           ValidateFile checks the following:

           notwell
               The file is not well-formed XML.

           notvalid
               The file does not follow the XMLTV DTD.

           invalidid
               An xmltvid does not look like a proper id, i.e. it does not match
               /^[-a-zA-Z0-9]+(\.[-a-zA-Z0-9]+)+$/.

           duplicateid
               More than one channel-entry found for a channelid.

           unknownid
               No channel-entry found for a channelid that is used in a programme-entry.

           noprogrammes
               No programme entries were found in the file.

           emptytitle
               A programme entry with an empty or missing title was found.

           emptydescription
               A programme entry with an empty desc-element was found. The desc-element shall be
               omitted if there is no description.

           badstart
               A programme entry with an invalid start-time was found.

           badstop
               A programme entry with an invalid stop-time was found.

           badepisode
               A programme entry with an invalid episode number was found.

           missingtimezone
               The start/stop time for a programme entry does not include a timezone.

           invalidtimezone
               The start/stop time for a programme entry contains an invalid timezone.

           badiso8859
               The file is encoded in iso-8859 but contains characters that have no meaning in
               iso-8859 (or are control characters).  If it's iso-8859-1 (aka Latin 1) it might
               be some characters in windows-1252 encoding.

           badutf8
               The file is encoded in utf-8 but contains characters that look strange.  1) Mis-
               encoded single characters represented with [EF][BF][BD] bytes 2) Mis-encoded
               single characters represented with [C3][AF][C2][BF][C2][BD] bytes 3) Mis-encoded
               single characters in range [C2][80-9F]

           badentity
               The file contains one or more undefined XML entities.

           If no errors are found, an empty list is returned.

BUGS

       It is currently necessary to specify the path to the xmltv dtd-file.  This should not be
       necessary.

COPYRIGHT

       Copyright (C) 2006 Mattias Holmlund.

       This program is free software; you can redistribute it and/or modify it under the terms of
       the GNU General Public License as published by the Free Software Foundation; either
       version 2 of the License, or (at your option) any later version.

       This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
       without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
       See the GNU General Public License for more details.

       You should have received a copy of the GNU General Public License along with this program;
       if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
       Boston, MA  02110-1301, USA.