public StandardSwapInstrument(XmlNode xmlNode) : base(xmlNode) { XmlNode issueInformationNode = xmlNode.SelectSingleNode("issueInformation"); if (issueInformationNode != null) { if (issueInformationNode.Attributes["href"] != null || issueInformationNode.Attributes["id"] != null) { if (issueInformationNode.Attributes["id"] != null) { issueInformationIDRef_ = issueInformationNode.Attributes["id"].Value; IssueInformation ob = new IssueInformation(issueInformationNode); IDManager.SetID(issueInformationIDRef_, ob); } else if (issueInformationNode.Attributes["href"] != null) { issueInformationIDRef_ = issueInformationNode.Attributes["href"].Value; } else { issueInformation_ = new IssueInformation(issueInformationNode); } } else { issueInformation_ = new IssueInformation(issueInformationNode); } } XmlNode underlyingInformationNode = xmlNode.SelectSingleNode("underlyingInformation"); if (underlyingInformationNode != null) { if (underlyingInformationNode.Attributes["href"] != null || underlyingInformationNode.Attributes["id"] != null) { if (underlyingInformationNode.Attributes["id"] != null) { underlyingInformationIDRef_ = underlyingInformationNode.Attributes["id"].Value; UnderlyingInformation ob = new UnderlyingInformation(underlyingInformationNode); IDManager.SetID(underlyingInformationIDRef_, ob); } else if (underlyingInformationNode.Attributes["href"] != null) { underlyingInformationIDRef_ = underlyingInformationNode.Attributes["href"].Value; } else { underlyingInformation_ = new UnderlyingInformation(underlyingInformationNode); } } else { underlyingInformation_ = new UnderlyingInformation(underlyingInformationNode); } } XmlNode swapPayoffInfoNode = xmlNode.SelectSingleNode("swapPayoffInfo"); if (swapPayoffInfoNode != null) { if (swapPayoffInfoNode.Attributes["href"] != null || swapPayoffInfoNode.Attributes["id"] != null) { if (swapPayoffInfoNode.Attributes["id"] != null) { swapPayoffInfoIDRef_ = swapPayoffInfoNode.Attributes["id"].Value; SwapPayoffInfo ob = new SwapPayoffInfo(swapPayoffInfoNode); IDManager.SetID(swapPayoffInfoIDRef_, ob); } else if (swapPayoffInfoNode.Attributes["href"] != null) { swapPayoffInfoIDRef_ = swapPayoffInfoNode.Attributes["href"].Value; } else { swapPayoffInfo_ = new SwapPayoffInfo(swapPayoffInfoNode); } } else { swapPayoffInfo_ = new SwapPayoffInfo(swapPayoffInfoNode); } } }