# File lib/asciidoctor/abstract_node.rb, line 317
  def image_uri(target_image, asset_dir_key = 'imagesdir')
    if (doc = @document).safe < SafeMode::SECURE && doc.attr?('data-uri')
      if (Helpers.uriish? target_image) ||
          (asset_dir_key && (images_base = doc.attr(asset_dir_key)) && (Helpers.uriish? images_base) &&
          (target_image = normalize_web_path(target_image, images_base, false)))
        if doc.attr?('allow-uri-read')
          generate_data_uri_from_uri target_image, doc.attr?('cache-uri')
        else
          target_image
        end
      else
        generate_data_uri target_image, asset_dir_key
      end
    else
      normalize_web_path target_image, (asset_dir_key ? doc.attr(asset_dir_key) : nil)
    end
  end