docs: def validate (self):
      """Returns True if this Sequence is valid, False otherwise.
      Validation error messages are stored in self.messages.
      """
      if not os.path.isfile(self.pathname):
        self.message.append('Filename "%s" does not exist.')
      else:
        try:
          with open(self.pathname, 'r') as stream:
            pass
        except IOError:
          self.messages.append('Could not open "%s" for reading.' % self.pathname)
  
      for line in self.commands:
        messages = [ ]
        if line.cmd and not line.cmd.validate(messages):
          msg = 'error: %s: %s' % (line.cmd.name, " ".join(messages))
          self.log.messages.append(msg)
  
      return len(self.log.messages) == 0