Qué tal Maribel,
Si ya tienes tus datos, por ejemplo en un DataSet o DataTable se me ocurre que quizá la forma más sencilla de hacerlo sería utilizando el método WriteXml() que tienen estas clases (más info aquí).
Ahora, esas clases traen también un método ReadXmlSchema() para leer el schema y aplicarlo al DataTable, pero no estoy seguro si puedes especificarlo una vez que los datos ya están cargados, y tampoco sé si lo utiliza a la hora de intentar escribir el contenido en formato XML (supongo que sí).
Otra cosa que podrías hacer es vaciar el contenido de tu DataSet o DataTable a XML usando WriteXml(), y después aplicarle una transformación usando XSLT, para dejarla en el formato que tú necesitas para que cumpla con tu schema. XSL un lenguaje bastante potente, pero no es tan sencillo de explicar; es bastante estándar, así que hay bastantes libros y material en el web sobre el tema.
Espero te sirva,
carlos