Code:
Dim doc As XDocument = New XDocument( _
New XDeclaration("1.0", "utf-8", "true"), _
New XElement("LeanerFirstTimeRegistration", _
New XElement("Header", _
New XElement("Record", New XAttribute("Type", "1"), _
New XElement("Filename", "test"), _
New XElement("ProvinceID", "5"), _
New XElement("EmisNumber", ""), _
New XElement("StatusID", "1"), _
New XElement("TransactionCategoryID", "4"), _
New XElement("SequenceNumber", "1"), _
New XElement("DateCreated", Format(Now, "yyyy-MM-dd")), _
New XElement("CreatedBy", "me"))), _
New XElement("LearnerInformation", _
From people As DataRow In table.Rows _
Order By people("LearnerSurname") _
Select New XElement("LeanerBiographical", _
New XElement("Record", _
New XAttribute("Type", "2"), _
New XElement("ProvinceID", "5"), _
New XElement("LearnerNumber", ""), _
New XElement("EmisNumber", ""), _
New XElement("Year", Now.Year), _
New XElement("LearnerSurname", people("LearnerSurname")), _
New XElement("LearnerName1", people("LearnerName1")), _
New XElement("LearnerName2", people("LearnerName2")), _
New XElement("LearnerName3", people("LearnerName3")), _
New XElement("BirthDate", people("BirthDate")), _
New XElement("GenderID", people("GenderID")), _
New XElement("ParentNumber1", people("ParentNumber1")), _
New XElement("ParentNumber2", people("ParentNumber2")), _
New XElement("GradeID", people("GradeID")), _
New XElement("Class", people("class")) _
)))))
doc.Save("C:\mynewXmFile.xml")
here is a portion of the data generated: