you cannot catch wild rare Pokemon in xd but you can catch the trainers rare Pokemon, if they are "inpure"
Yes.
You can't catch it.
Rayquaza is not avaliable in Pokemon XD
You are not able to catch the regis in Diamond. You can catch them in the Game Boy Advance version of Pokemon Emerald.
No, you can't catch Groudon in Pokémon XD.
Catch them all.
enternice cage
at the shadow Pokemon factory
No
For Pokemon ruby you can catch the three regis, rayquaza, groudon, and latios/latias. In sapphire you can catch the three regis, rayquaza, kyogre, and latios/latias. However, in emerald you can catch kyogre, groudon, rayquaza, the three regis, and latios/latias.
you can only catch them in Pokemon emerald, sapphire, or ruby