In this chapter, you learned about XML serialization and some of the many and varied uses to which this extremely flexible tool can be put. You learned how to persist an object in XML format, and how to work with XML that conforms to a particular schema in an object-oriented fashion without touching the XML directly. You also learned how to control the formatting of the generated XML. This knowledge enables you to easily save and retrieve nearly any type of business-oriented data, and make interoperability with other XML-based systems almost trivial. As you saw with the menuing system you created, XML serialization can also be put to many uses that might not immediately spring to mind when you hear the words "XML serialization."