code: def attribute_crawl(self, key):
          union = set()
          for feature in self:
              values = feature.get_attribute(key, as_list=True)
              if values is not None:
                  union.update(set(values))
          return union