In particular, are there any restrictions between Pokémon Diamond/Pokémon Pearl and Pokémon SoulSilver/Pokémon HeartGold?
There are no trade restrictions between gen 4 games. I have traded from HG and SS to Platinum.
- You must have received the Pokedex from Professor Rowan at Sandgem Town
- You must have received a Pokedex from Professor Oak at Mr. Pokemon's house (North of Cherrygrove City)
You would need 2 DS consoles and then just head to the Union Room, found in the Pokemon Centre, on both games and trade from there. You will need 2 Pokemon in your party to be able to trade.
Issues arise when trading between generations (gen 3 to gen 4, for example) as Pokemon, their Moves and their Held Items, may not exist in the past or future.