A nested data set derives its data from another data set, referred to as the parent or master data set. The current row of the parent data set determines the data inside the nested data set. Whenever the current row of the parent data set changes, the data inside the nested data set automatically updates. The concept is similar to working with Spry master and detail pages, where dynamic regions on a page update whenever the current row of the master region updates.
The way nested data sets extract data from parent data sets depends on how both the master and nested data sets are implemented. When you create a nested data set, you must use either the Spry.Data.XMLDataSet constructor, or another Spry.Data.NestedXMLDataSet constructor to create the parent data set. The nested data set then extracts its data directly from the same cached copy of the XML DOM document that the parent data set uses. This means that for any document that the parent data set and one or more nested data sets uses, the document loads only once. To load new XML data from a server, you must always load the parent data set, as nested data sets cannot reload data from a server.