private void ReadUnknown(XmlReader xr)
{
Debug.Assert(false); // Unknown node!
if(xr.IsEmptyElement) return;
string strUnknownName = xr.Name;
ProcessNode(xr);
while(xr.Read())
{
if(xr.NodeType == XmlNodeType.EndElement) break;
if(xr.NodeType != XmlNodeType.Element) continue;
ReadUnknown(xr);
}
Debug.Assert(xr.Name == strUnknownName);
}