logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

XMLTV::ValidateFile - Validates an XMLTV file

Bugs

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

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.

Name

       XMLTV::ValidateFile - Validates an XMLTV file

See Also