public override void Deserialize(Version documentVersion, XmlElement node) { base.Deserialize(documentVersion, node); LayoutType = ST.GetLayoutType(ST.ReadTextNode(node, "layout")); // 向后兼容 if (string.IsNullOrEmpty(Remark)) { Remark = ST.ReadCDataNode(node, "description"); if (Remark == string.Empty) { Remark = ST.ReadTextNode(node, "description"); } } // style XmlElement styleNode = node.SelectSingleNode("style") as XmlElement; if (styleNode != null) { DeserializeMapStyle(styleNode); } // extend attributes (向后兼容) XmlElement attributeNode = node.SelectSingleNode("attributes") as XmlElement; if (attributeNode != null) { LoadExtendAttributes(attributeNode); } // nodes XmlElement rootNode = node.SelectSingleNode("nodes/node") as XmlElement; if (rootNode != null) { var topic = Topic.DeserializeTopic(documentVersion, rootNode); Root = topic; } }