best till here: xsd.   (Needs retestin)