I've just started out trying to make a Factorio mod and already beating my head against the wall

Im trying to create a new item, in data.lua I have:
local myItem = table.deepcopy(data.raw["item"]["iron-plate"])
myItem.name = "my-item"
local recipe = {
type = "recipe",
name = "my-item",
enabled = true,
energy_required = 1,
ingredients = {{"iron-plate", 100}},
result = "my-item"
}
data:extend{myItem, recipe}
This works fine as long as the thing in the copy field is an item like iron plate, but as soon as I try anything else like data.raw["container"]["wooden-chest"] or data.raw["transport-belt"]["transport-belt"], I get the error:
Failed to load mods: Error in assignID: item with name 'my-item' does not exist.
Source: my-item (recipe).
Does anyone know what I'm doing wrong?