well it depends on you; usually XSD defines a contract; it tells other people how the XML will be done (not all the logical controls, but it can make understand how the XML will be); so basically if I was you I would first creat the XSD for my own XML file; I'll give this XSD to the external system's developers so they can understand that all the XMLs you'll provide will follow the created XSD Then you can create you XML by using the created XSD (e.g. by using some XML Binding like JAXb o Jibx etc...)
Angelo