# File lib/ai4r/classifiers/prism.rb, line 34
      def build(data_set)
        data_set.check_not_empty
        @data_set = data_set
        domains = @data_set.build_domains
        instances = @data_set.data_items.collect {|data| data }
        @rules = []
        domains.last.each do |class_value|
          while(has_class_value(instances, class_value))
            rule = build_rule(class_value, instances)
            @rules << rule
            instances = instances.select {|data| !matches_conditions(data, rule[:conditions])}
          end
        end
        return self
      end