def is_correct(self):
        """Check if this object configuration is correct ::

        * Check if dateranges of timeperiod are valid
        * Call our parent class is_correct checker

        :return: True if the configuration is correct, otherwise False if at least one daterange
        is not correct
        :rtype: bool
        """
        state = True
        for daterange in self.dateranges:
            good = daterange.is_correct()
            if not good:
                self.add_error("[timeperiod::%s] invalid daterange '%s'"
                               % (self.get_name(), daterange))
            state &= good

        # Warn about non correct entries
        for entry in self.invalid_entries:
            self.add_error("[timeperiod::%s] invalid entry '%s'" % (self.get_name(), entry))

        return super(Timeperiod, self).is_correct() and state