def update_attribute_value_items(self):
        """
        Returns an iterator of items for an attribute value map to use for
        an UPDATE operation.

        The iterator ignores collection attributes as these are processed
        implicitly by the traversal algorithm.

        :returns: iterator yielding tuples with objects implementing
          :class:`everest.resources.interfaces.IResourceAttribute` as the
          first and the proxied attribute value as the second argument.
        """
        for attr in self._attribute_iterator():
            if attr.kind != RESOURCE_ATTRIBUTE_KINDS.COLLECTION:
                try:
                    attr_val = self._get_proxied_attribute_value(attr)
                except AttributeError:
                    continue
                else:
                    yield (attr, attr_val)