code: def _item_check(self, dim_vals, data):
          
          if not self._check_items:
              return
          elif self.data_type is not None and not isinstance(data, self.data_type):
              if isinstance(self.data_type, tuple):
                  data_type = tuple(dt.__name__ for dt in self.data_type)
              else:
                  data_type = self.data_type.__name__
              raise TypeError('{slf} does not accept {data} type, data elements have '
                              'to be a {restr}.'.format(slf=type(self).__name__,
                                                        data=type(data).__name__,
                                                        restr=data_type))
          elif not len(dim_vals) == self.ndims:
              raise KeyError('The data contains keys of length %d, but the kdims '
                             'only declare %d dimensions. Ensure that the number '
                             'of kdims match the length of the keys in your data.'
                             % (len(dim_vals), self.ndims))
docs: Applies optional checks to individual data elements before
          they are inserted ensuring that they are of a certain
          type. Subclassed may implement further element restrictions.