    # File lib/chef/node/attribute.rb, line 371
          def auto_vivifiy(data_hash, key)
            if data_hash.has_key?(key)
              unless data_hash[key].respond_to?(:has_key?)
                raise ArgumentError, "You tried to set a nested key, where the parent is not a hash-like object: #{@current_nesting_level.join("/")}/#{key} " unless auto_vivifiy_on_read
              end
            else
              data_hash[key] = Mash.new
            end
            data_hash
          end