def each_iptc_dataset
      Magick::IPTC.constants.each do |record|
        rec = Magick::IPTC.const_get(record)
        rec.constants.each do |dataset|
          data_field = get_iptc_dataset(rec.const_get(dataset))
          yield(dataset, data_field) unless data_field.nil?
        end
      end
      nil
    end
def each_iptc_dataset
      Magick::IPTC.constants.each do |record|
        rec = Magick::IPTC.const_get(record)
        rec.constants.each do |dataset|
          data_field = get_iptc_dataset(rec.const_get(dataset))
          yield(dataset, data_field) unless data_field.nil?
        end
      end
      nil
    end
Iterate over IPTC record number:dataset tags, yield for each non-nil dataset