def maximum( self ):
        """
        Returns the maximum value for this ruler.  If the cached value is None,
        then a default value will be specified based on the ruler type.
        
        :return     <variant>
        """
        if ( self._maximum is not None ):
            return self._maximum
        
        rtype = self.rulerType()
        
        if ( rtype == XChartRuler.Type.Number ):
            self._maximum = 100
            
        elif ( rtype == XChartRuler.Type.Date ):
            self._maximum = QDate.currentDate().addDays(10)
        
        elif ( rtype == XChartRuler.Type.Datetime ):
            self._maximum = QDateTime.currentDateTime().addDays(10)
        
        elif ( rtype == XChartRuler.Type.Time ):
            self._maximum = QDateTime.currentDateTime().time().addSecs(60 * 60)
            
        else:
            notches = self.notches()
            if ( notches ):
                self._maximum = notches[-1]
                
        return self._maximum