    # File lib/chef/run_context.rb, line 61
        def load(run_list_expansion)
          load_libraries

          load_lwrps
          load_attributes
          load_resource_definitions

          # Precendence rules state that roles' attributes come after
          # cookbooks. Now we've loaded attributes from cookbooks with
          # load_attributes, apply the expansion attributes (loaded from
          # roles) to the node.
          @node.apply_expansion_attributes(run_list_expansion)

          @events.recipe_load_start(run_list_expansion.recipes.size)
          run_list_expansion.recipes.each do |recipe|
            begin
              # TODO: timh/cw, 5-14-2010: It's distasteful to be including
              # the DSL in a class outside the context of the DSL
              include_recipe(recipe)
            rescue Chef::Exceptions::RecipeNotFound => e
              @events.recipe_not_found(e)
              raise
            rescue Exception => e
              path = resolve_recipe(recipe)
              @events.recipe_file_load_failed(path, e)
              raise
            end
          end
          @events.recipe_load_complete
        end