public DividendConditions(XmlNode xmlNode) { XmlNodeList dividendReinvestmentNodeList = xmlNode.SelectNodes("dividendReinvestment"); if (dividendReinvestmentNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendReinvestmentNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendReinvestmentIDRef = item.Attributes["id"].Name; XsdTypeBoolean ob = XsdTypeBoolean(); IDManager.SetID(dividendReinvestmentIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendReinvestmentIDRef = item.Attributes["href"].Name; } else { dividendReinvestment = new XsdTypeBoolean(item); } } } XmlNodeList dividendEntitlementNodeList = xmlNode.SelectNodes("dividendEntitlement"); if (dividendEntitlementNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendEntitlementNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendEntitlementIDRef = item.Attributes["id"].Name; DividendEntitlementEnum ob = DividendEntitlementEnum(); IDManager.SetID(dividendEntitlementIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendEntitlementIDRef = item.Attributes["href"].Name; } else { dividendEntitlement = new DividendEntitlementEnum(item); } } } XmlNodeList dividendAmountNodeList = xmlNode.SelectNodes("dividendAmount"); if (dividendAmountNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendAmountNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendAmountIDRef = item.Attributes["id"].Name; DividendAmountTypeEnum ob = DividendAmountTypeEnum(); IDManager.SetID(dividendAmountIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendAmountIDRef = item.Attributes["href"].Name; } else { dividendAmount = new DividendAmountTypeEnum(item); } } } XmlNodeList dividendPaymentDateNodeList = xmlNode.SelectNodes("dividendPaymentDate"); if (dividendPaymentDateNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendPaymentDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPaymentDateIDRef = item.Attributes["id"].Name; DividendPaymentDate ob = DividendPaymentDate(); IDManager.SetID(dividendPaymentDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPaymentDateIDRef = item.Attributes["href"].Name; } else { dividendPaymentDate = new DividendPaymentDate(item); } } } XmlNodeList dividendPeriodEffectiveDateNodeList = xmlNode.SelectNodes("dividendPeriodEffectiveDate"); if (dividendPeriodEffectiveDateNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendPeriodEffectiveDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPeriodEffectiveDateIDRef = item.Attributes["id"].Name; DateReference ob = DateReference(); IDManager.SetID(dividendPeriodEffectiveDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPeriodEffectiveDateIDRef = item.Attributes["href"].Name; } else { dividendPeriodEffectiveDate = new DateReference(item); } } } XmlNodeList dividendPeriodEndDateNodeList = xmlNode.SelectNodes("dividendPeriodEndDate"); if (dividendPeriodEndDateNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendPeriodEndDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPeriodEndDateIDRef = item.Attributes["id"].Name; DateReference ob = DateReference(); IDManager.SetID(dividendPeriodEndDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPeriodEndDateIDRef = item.Attributes["href"].Name; } else { dividendPeriodEndDate = new DateReference(item); } } } XmlNodeList dividendPeriodNodeList = xmlNode.SelectNodes("dividendPeriod"); if (dividendPeriodNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendPeriodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPeriodIDRef = item.Attributes["id"].Name; DividendPeriodEnum ob = DividendPeriodEnum(); IDManager.SetID(dividendPeriodIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPeriodIDRef = item.Attributes["href"].Name; } else { dividendPeriod = new DividendPeriodEnum(item); } } } XmlNodeList extraOrdinaryDividendsNodeList = xmlNode.SelectNodes("extraOrdinaryDividends"); if (extraOrdinaryDividendsNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in extraOrdinaryDividendsNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { extraOrdinaryDividendsIDRef = item.Attributes["id"].Name; PartyReference ob = PartyReference(); IDManager.SetID(extraOrdinaryDividendsIDRef, ob); } else if (item.Attributes.ToString() == "href") { extraOrdinaryDividendsIDRef = item.Attributes["href"].Name; } else { extraOrdinaryDividends = new PartyReference(item); } } } XmlNodeList excessDividendAmountNodeList = xmlNode.SelectNodes("excessDividendAmount"); if (excessDividendAmountNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in excessDividendAmountNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { excessDividendAmountIDRef = item.Attributes["id"].Name; DividendAmountTypeEnum ob = DividendAmountTypeEnum(); IDManager.SetID(excessDividendAmountIDRef, ob); } else if (item.Attributes.ToString() == "href") { excessDividendAmountIDRef = item.Attributes["href"].Name; } else { excessDividendAmount = new DividendAmountTypeEnum(item); } } } XmlNodeList currencyNodeList = xmlNode.SelectNodes("currency"); if (currencyNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in currencyNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyIDRef = item.Attributes["id"].Name; IdentifiedCurrency ob = IdentifiedCurrency(); IDManager.SetID(currencyIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyIDRef = item.Attributes["href"].Name; } else { currency = new IdentifiedCurrency(item); } } } XmlNodeList determinationMethodNodeList = xmlNode.SelectNodes("determinationMethod"); if (determinationMethodNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in determinationMethodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { determinationMethodIDRef = item.Attributes["id"].Name; DeterminationMethod ob = DeterminationMethod(); IDManager.SetID(determinationMethodIDRef, ob); } else if (item.Attributes.ToString() == "href") { determinationMethodIDRef = item.Attributes["href"].Name; } else { determinationMethod = new DeterminationMethod(item); } } } XmlNodeList currencyReferenceNodeList = xmlNode.SelectNodes("currencyReference"); if (currencyReferenceNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in currencyReferenceNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyReferenceIDRef = item.Attributes["id"].Name; IdentifiedCurrencyReference ob = IdentifiedCurrencyReference(); IDManager.SetID(currencyReferenceIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyReferenceIDRef = item.Attributes["href"].Name; } else { currencyReference = new IdentifiedCurrencyReference(item); } } } XmlNodeList dividendFxTriggerDateNodeList = xmlNode.SelectNodes("dividendFxTriggerDate"); if (dividendFxTriggerDateNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendFxTriggerDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendFxTriggerDateIDRef = item.Attributes["id"].Name; DividendPaymentDate ob = DividendPaymentDate(); IDManager.SetID(dividendFxTriggerDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendFxTriggerDateIDRef = item.Attributes["href"].Name; } else { dividendFxTriggerDate = new DividendPaymentDate(item); } } } XmlNodeList interestAccrualsMethodNodeList = xmlNode.SelectNodes("interestAccrualsMethod"); if (interestAccrualsMethodNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in interestAccrualsMethodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { interestAccrualsMethodIDRef = item.Attributes["id"].Name; InterestAccrualsCompoundingMethod ob = InterestAccrualsCompoundingMethod(); IDManager.SetID(interestAccrualsMethodIDRef, ob); } else if (item.Attributes.ToString() == "href") { interestAccrualsMethodIDRef = item.Attributes["href"].Name; } else { interestAccrualsMethod = new InterestAccrualsCompoundingMethod(item); } } } XmlNodeList numberOfIndexUnitsNodeList = xmlNode.SelectNodes("numberOfIndexUnits"); if (numberOfIndexUnitsNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in numberOfIndexUnitsNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { numberOfIndexUnitsIDRef = item.Attributes["id"].Name; NonNegativeDecimal ob = NonNegativeDecimal(); IDManager.SetID(numberOfIndexUnitsIDRef, ob); } else if (item.Attributes.ToString() == "href") { numberOfIndexUnitsIDRef = item.Attributes["href"].Name; } else { numberOfIndexUnits = new NonNegativeDecimal(item); } } } XmlNodeList declaredCashDividendPercentageNodeList = xmlNode.SelectNodes("declaredCashDividendPercentage"); if (declaredCashDividendPercentageNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in declaredCashDividendPercentageNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { declaredCashDividendPercentageIDRef = item.Attributes["id"].Name; NonNegativeDecimal ob = NonNegativeDecimal(); IDManager.SetID(declaredCashDividendPercentageIDRef, ob); } else if (item.Attributes.ToString() == "href") { declaredCashDividendPercentageIDRef = item.Attributes["href"].Name; } else { declaredCashDividendPercentage = new NonNegativeDecimal(item); } } } XmlNodeList declaredCashEquivalentDividendPercentageNodeList = xmlNode.SelectNodes("declaredCashEquivalentDividendPercentage"); if (declaredCashEquivalentDividendPercentageNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in declaredCashEquivalentDividendPercentageNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { declaredCashEquivalentDividendPercentageIDRef = item.Attributes["id"].Name; NonNegativeDecimal ob = NonNegativeDecimal(); IDManager.SetID(declaredCashEquivalentDividendPercentageIDRef, ob); } else if (item.Attributes.ToString() == "href") { declaredCashEquivalentDividendPercentageIDRef = item.Attributes["href"].Name; } else { declaredCashEquivalentDividendPercentage = new NonNegativeDecimal(item); } } } XmlNodeList nonCashDividendTreatmentNodeList = xmlNode.SelectNodes("nonCashDividendTreatment"); if (nonCashDividendTreatmentNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in nonCashDividendTreatmentNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { nonCashDividendTreatmentIDRef = item.Attributes["id"].Name; NonCashDividendTreatmentEnum ob = NonCashDividendTreatmentEnum(); IDManager.SetID(nonCashDividendTreatmentIDRef, ob); } else if (item.Attributes.ToString() == "href") { nonCashDividendTreatmentIDRef = item.Attributes["href"].Name; } else { nonCashDividendTreatment = new NonCashDividendTreatmentEnum(item); } } } XmlNodeList dividendCompositionNodeList = xmlNode.SelectNodes("dividendComposition"); if (dividendCompositionNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in dividendCompositionNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendCompositionIDRef = item.Attributes["id"].Name; DividendCompositionEnum ob = DividendCompositionEnum(); IDManager.SetID(dividendCompositionIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendCompositionIDRef = item.Attributes["href"].Name; } else { dividendComposition = new DividendCompositionEnum(item); } } } XmlNodeList specialDividendsNodeList = xmlNode.SelectNodes("specialDividends"); if (specialDividendsNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in specialDividendsNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { specialDividendsIDRef = item.Attributes["id"].Name; XsdTypeBoolean ob = XsdTypeBoolean(); IDManager.SetID(specialDividendsIDRef, ob); } else if (item.Attributes.ToString() == "href") { specialDividendsIDRef = item.Attributes["href"].Name; } else { specialDividends = new XsdTypeBoolean(item); } } } }
public DividendConditions(XmlNode xmlNode) { XmlNode dividendReinvestmentNode = xmlNode.SelectSingleNode("dividendReinvestment"); if (dividendReinvestmentNode != null) { if (dividendReinvestmentNode.Attributes["href"] != null || dividendReinvestmentNode.Attributes["id"] != null) { if (dividendReinvestmentNode.Attributes["id"] != null) { dividendReinvestmentIDRef_ = dividendReinvestmentNode.Attributes["id"].Value; XsdTypeBoolean ob = new XsdTypeBoolean(dividendReinvestmentNode); IDManager.SetID(dividendReinvestmentIDRef_, ob); } else if (dividendReinvestmentNode.Attributes["href"] != null) { dividendReinvestmentIDRef_ = dividendReinvestmentNode.Attributes["href"].Value; } else { dividendReinvestment_ = new XsdTypeBoolean(dividendReinvestmentNode); } } else { dividendReinvestment_ = new XsdTypeBoolean(dividendReinvestmentNode); } } XmlNode dividendEntitlementNode = xmlNode.SelectSingleNode("dividendEntitlement"); if (dividendEntitlementNode != null) { if (dividendEntitlementNode.Attributes["href"] != null || dividendEntitlementNode.Attributes["id"] != null) { if (dividendEntitlementNode.Attributes["id"] != null) { dividendEntitlementIDRef_ = dividendEntitlementNode.Attributes["id"].Value; DividendEntitlementEnum ob = new DividendEntitlementEnum(dividendEntitlementNode); IDManager.SetID(dividendEntitlementIDRef_, ob); } else if (dividendEntitlementNode.Attributes["href"] != null) { dividendEntitlementIDRef_ = dividendEntitlementNode.Attributes["href"].Value; } else { dividendEntitlement_ = new DividendEntitlementEnum(dividendEntitlementNode); } } else { dividendEntitlement_ = new DividendEntitlementEnum(dividendEntitlementNode); } } XmlNode dividendAmountNode = xmlNode.SelectSingleNode("dividendAmount"); if (dividendAmountNode != null) { if (dividendAmountNode.Attributes["href"] != null || dividendAmountNode.Attributes["id"] != null) { if (dividendAmountNode.Attributes["id"] != null) { dividendAmountIDRef_ = dividendAmountNode.Attributes["id"].Value; DividendAmountTypeEnum ob = new DividendAmountTypeEnum(dividendAmountNode); IDManager.SetID(dividendAmountIDRef_, ob); } else if (dividendAmountNode.Attributes["href"] != null) { dividendAmountIDRef_ = dividendAmountNode.Attributes["href"].Value; } else { dividendAmount_ = new DividendAmountTypeEnum(dividendAmountNode); } } else { dividendAmount_ = new DividendAmountTypeEnum(dividendAmountNode); } } XmlNode dividendPaymentDateNode = xmlNode.SelectSingleNode("dividendPaymentDate"); if (dividendPaymentDateNode != null) { if (dividendPaymentDateNode.Attributes["href"] != null || dividendPaymentDateNode.Attributes["id"] != null) { if (dividendPaymentDateNode.Attributes["id"] != null) { dividendPaymentDateIDRef_ = dividendPaymentDateNode.Attributes["id"].Value; DividendPaymentDate ob = new DividendPaymentDate(dividendPaymentDateNode); IDManager.SetID(dividendPaymentDateIDRef_, ob); } else if (dividendPaymentDateNode.Attributes["href"] != null) { dividendPaymentDateIDRef_ = dividendPaymentDateNode.Attributes["href"].Value; } else { dividendPaymentDate_ = new DividendPaymentDate(dividendPaymentDateNode); } } else { dividendPaymentDate_ = new DividendPaymentDate(dividendPaymentDateNode); } } XmlNode dividendPeriodEffectiveDateNode = xmlNode.SelectSingleNode("dividendPeriodEffectiveDate"); if (dividendPeriodEffectiveDateNode != null) { if (dividendPeriodEffectiveDateNode.Attributes["href"] != null || dividendPeriodEffectiveDateNode.Attributes["id"] != null) { if (dividendPeriodEffectiveDateNode.Attributes["id"] != null) { dividendPeriodEffectiveDateIDRef_ = dividendPeriodEffectiveDateNode.Attributes["id"].Value; DateReference ob = new DateReference(dividendPeriodEffectiveDateNode); IDManager.SetID(dividendPeriodEffectiveDateIDRef_, ob); } else if (dividendPeriodEffectiveDateNode.Attributes["href"] != null) { dividendPeriodEffectiveDateIDRef_ = dividendPeriodEffectiveDateNode.Attributes["href"].Value; } else { dividendPeriodEffectiveDate_ = new DateReference(dividendPeriodEffectiveDateNode); } } else { dividendPeriodEffectiveDate_ = new DateReference(dividendPeriodEffectiveDateNode); } } XmlNode dividendPeriodEndDateNode = xmlNode.SelectSingleNode("dividendPeriodEndDate"); if (dividendPeriodEndDateNode != null) { if (dividendPeriodEndDateNode.Attributes["href"] != null || dividendPeriodEndDateNode.Attributes["id"] != null) { if (dividendPeriodEndDateNode.Attributes["id"] != null) { dividendPeriodEndDateIDRef_ = dividendPeriodEndDateNode.Attributes["id"].Value; DateReference ob = new DateReference(dividendPeriodEndDateNode); IDManager.SetID(dividendPeriodEndDateIDRef_, ob); } else if (dividendPeriodEndDateNode.Attributes["href"] != null) { dividendPeriodEndDateIDRef_ = dividendPeriodEndDateNode.Attributes["href"].Value; } else { dividendPeriodEndDate_ = new DateReference(dividendPeriodEndDateNode); } } else { dividendPeriodEndDate_ = new DateReference(dividendPeriodEndDateNode); } } XmlNode dividendPeriodNode = xmlNode.SelectSingleNode("dividendPeriod"); if (dividendPeriodNode != null) { if (dividendPeriodNode.Attributes["href"] != null || dividendPeriodNode.Attributes["id"] != null) { if (dividendPeriodNode.Attributes["id"] != null) { dividendPeriodIDRef_ = dividendPeriodNode.Attributes["id"].Value; DividendPeriodEnum ob = new DividendPeriodEnum(dividendPeriodNode); IDManager.SetID(dividendPeriodIDRef_, ob); } else if (dividendPeriodNode.Attributes["href"] != null) { dividendPeriodIDRef_ = dividendPeriodNode.Attributes["href"].Value; } else { dividendPeriod_ = new DividendPeriodEnum(dividendPeriodNode); } } else { dividendPeriod_ = new DividendPeriodEnum(dividendPeriodNode); } } XmlNode extraOrdinaryDividendsNode = xmlNode.SelectSingleNode("extraOrdinaryDividends"); if (extraOrdinaryDividendsNode != null) { if (extraOrdinaryDividendsNode.Attributes["href"] != null || extraOrdinaryDividendsNode.Attributes["id"] != null) { if (extraOrdinaryDividendsNode.Attributes["id"] != null) { extraOrdinaryDividendsIDRef_ = extraOrdinaryDividendsNode.Attributes["id"].Value; PartyReference ob = new PartyReference(extraOrdinaryDividendsNode); IDManager.SetID(extraOrdinaryDividendsIDRef_, ob); } else if (extraOrdinaryDividendsNode.Attributes["href"] != null) { extraOrdinaryDividendsIDRef_ = extraOrdinaryDividendsNode.Attributes["href"].Value; } else { extraOrdinaryDividends_ = new PartyReference(extraOrdinaryDividendsNode); } } else { extraOrdinaryDividends_ = new PartyReference(extraOrdinaryDividendsNode); } } XmlNode excessDividendAmountNode = xmlNode.SelectSingleNode("excessDividendAmount"); if (excessDividendAmountNode != null) { if (excessDividendAmountNode.Attributes["href"] != null || excessDividendAmountNode.Attributes["id"] != null) { if (excessDividendAmountNode.Attributes["id"] != null) { excessDividendAmountIDRef_ = excessDividendAmountNode.Attributes["id"].Value; DividendAmountTypeEnum ob = new DividendAmountTypeEnum(excessDividendAmountNode); IDManager.SetID(excessDividendAmountIDRef_, ob); } else if (excessDividendAmountNode.Attributes["href"] != null) { excessDividendAmountIDRef_ = excessDividendAmountNode.Attributes["href"].Value; } else { excessDividendAmount_ = new DividendAmountTypeEnum(excessDividendAmountNode); } } else { excessDividendAmount_ = new DividendAmountTypeEnum(excessDividendAmountNode); } } XmlNode currencyNode = xmlNode.SelectSingleNode("currency"); if (currencyNode != null) { if (currencyNode.Attributes["href"] != null || currencyNode.Attributes["id"] != null) { if (currencyNode.Attributes["id"] != null) { currencyIDRef_ = currencyNode.Attributes["id"].Value; IdentifiedCurrency ob = new IdentifiedCurrency(currencyNode); IDManager.SetID(currencyIDRef_, ob); } else if (currencyNode.Attributes["href"] != null) { currencyIDRef_ = currencyNode.Attributes["href"].Value; } else { currency_ = new IdentifiedCurrency(currencyNode); } } else { currency_ = new IdentifiedCurrency(currencyNode); } } XmlNode determinationMethodNode = xmlNode.SelectSingleNode("determinationMethod"); if (determinationMethodNode != null) { if (determinationMethodNode.Attributes["href"] != null || determinationMethodNode.Attributes["id"] != null) { if (determinationMethodNode.Attributes["id"] != null) { determinationMethodIDRef_ = determinationMethodNode.Attributes["id"].Value; DeterminationMethod ob = new DeterminationMethod(determinationMethodNode); IDManager.SetID(determinationMethodIDRef_, ob); } else if (determinationMethodNode.Attributes["href"] != null) { determinationMethodIDRef_ = determinationMethodNode.Attributes["href"].Value; } else { determinationMethod_ = new DeterminationMethod(determinationMethodNode); } } else { determinationMethod_ = new DeterminationMethod(determinationMethodNode); } } XmlNode currencyReferenceNode = xmlNode.SelectSingleNode("currencyReference"); if (currencyReferenceNode != null) { if (currencyReferenceNode.Attributes["href"] != null || currencyReferenceNode.Attributes["id"] != null) { if (currencyReferenceNode.Attributes["id"] != null) { currencyReferenceIDRef_ = currencyReferenceNode.Attributes["id"].Value; IdentifiedCurrencyReference ob = new IdentifiedCurrencyReference(currencyReferenceNode); IDManager.SetID(currencyReferenceIDRef_, ob); } else if (currencyReferenceNode.Attributes["href"] != null) { currencyReferenceIDRef_ = currencyReferenceNode.Attributes["href"].Value; } else { currencyReference_ = new IdentifiedCurrencyReference(currencyReferenceNode); } } else { currencyReference_ = new IdentifiedCurrencyReference(currencyReferenceNode); } } XmlNode dividendFxTriggerDateNode = xmlNode.SelectSingleNode("dividendFxTriggerDate"); if (dividendFxTriggerDateNode != null) { if (dividendFxTriggerDateNode.Attributes["href"] != null || dividendFxTriggerDateNode.Attributes["id"] != null) { if (dividendFxTriggerDateNode.Attributes["id"] != null) { dividendFxTriggerDateIDRef_ = dividendFxTriggerDateNode.Attributes["id"].Value; DividendPaymentDate ob = new DividendPaymentDate(dividendFxTriggerDateNode); IDManager.SetID(dividendFxTriggerDateIDRef_, ob); } else if (dividendFxTriggerDateNode.Attributes["href"] != null) { dividendFxTriggerDateIDRef_ = dividendFxTriggerDateNode.Attributes["href"].Value; } else { dividendFxTriggerDate_ = new DividendPaymentDate(dividendFxTriggerDateNode); } } else { dividendFxTriggerDate_ = new DividendPaymentDate(dividendFxTriggerDateNode); } } XmlNode interestAccrualsMethodNode = xmlNode.SelectSingleNode("interestAccrualsMethod"); if (interestAccrualsMethodNode != null) { if (interestAccrualsMethodNode.Attributes["href"] != null || interestAccrualsMethodNode.Attributes["id"] != null) { if (interestAccrualsMethodNode.Attributes["id"] != null) { interestAccrualsMethodIDRef_ = interestAccrualsMethodNode.Attributes["id"].Value; InterestAccrualsCompoundingMethod ob = new InterestAccrualsCompoundingMethod(interestAccrualsMethodNode); IDManager.SetID(interestAccrualsMethodIDRef_, ob); } else if (interestAccrualsMethodNode.Attributes["href"] != null) { interestAccrualsMethodIDRef_ = interestAccrualsMethodNode.Attributes["href"].Value; } else { interestAccrualsMethod_ = new InterestAccrualsCompoundingMethod(interestAccrualsMethodNode); } } else { interestAccrualsMethod_ = new InterestAccrualsCompoundingMethod(interestAccrualsMethodNode); } } XmlNode numberOfIndexUnitsNode = xmlNode.SelectSingleNode("numberOfIndexUnits"); if (numberOfIndexUnitsNode != null) { if (numberOfIndexUnitsNode.Attributes["href"] != null || numberOfIndexUnitsNode.Attributes["id"] != null) { if (numberOfIndexUnitsNode.Attributes["id"] != null) { numberOfIndexUnitsIDRef_ = numberOfIndexUnitsNode.Attributes["id"].Value; NonNegativeDecimal ob = new NonNegativeDecimal(numberOfIndexUnitsNode); IDManager.SetID(numberOfIndexUnitsIDRef_, ob); } else if (numberOfIndexUnitsNode.Attributes["href"] != null) { numberOfIndexUnitsIDRef_ = numberOfIndexUnitsNode.Attributes["href"].Value; } else { numberOfIndexUnits_ = new NonNegativeDecimal(numberOfIndexUnitsNode); } } else { numberOfIndexUnits_ = new NonNegativeDecimal(numberOfIndexUnitsNode); } } XmlNode declaredCashDividendPercentageNode = xmlNode.SelectSingleNode("declaredCashDividendPercentage"); if (declaredCashDividendPercentageNode != null) { if (declaredCashDividendPercentageNode.Attributes["href"] != null || declaredCashDividendPercentageNode.Attributes["id"] != null) { if (declaredCashDividendPercentageNode.Attributes["id"] != null) { declaredCashDividendPercentageIDRef_ = declaredCashDividendPercentageNode.Attributes["id"].Value; NonNegativeDecimal ob = new NonNegativeDecimal(declaredCashDividendPercentageNode); IDManager.SetID(declaredCashDividendPercentageIDRef_, ob); } else if (declaredCashDividendPercentageNode.Attributes["href"] != null) { declaredCashDividendPercentageIDRef_ = declaredCashDividendPercentageNode.Attributes["href"].Value; } else { declaredCashDividendPercentage_ = new NonNegativeDecimal(declaredCashDividendPercentageNode); } } else { declaredCashDividendPercentage_ = new NonNegativeDecimal(declaredCashDividendPercentageNode); } } XmlNode declaredCashEquivalentDividendPercentageNode = xmlNode.SelectSingleNode("declaredCashEquivalentDividendPercentage"); if (declaredCashEquivalentDividendPercentageNode != null) { if (declaredCashEquivalentDividendPercentageNode.Attributes["href"] != null || declaredCashEquivalentDividendPercentageNode.Attributes["id"] != null) { if (declaredCashEquivalentDividendPercentageNode.Attributes["id"] != null) { declaredCashEquivalentDividendPercentageIDRef_ = declaredCashEquivalentDividendPercentageNode.Attributes["id"].Value; NonNegativeDecimal ob = new NonNegativeDecimal(declaredCashEquivalentDividendPercentageNode); IDManager.SetID(declaredCashEquivalentDividendPercentageIDRef_, ob); } else if (declaredCashEquivalentDividendPercentageNode.Attributes["href"] != null) { declaredCashEquivalentDividendPercentageIDRef_ = declaredCashEquivalentDividendPercentageNode.Attributes["href"].Value; } else { declaredCashEquivalentDividendPercentage_ = new NonNegativeDecimal(declaredCashEquivalentDividendPercentageNode); } } else { declaredCashEquivalentDividendPercentage_ = new NonNegativeDecimal(declaredCashEquivalentDividendPercentageNode); } } XmlNode nonCashDividendTreatmentNode = xmlNode.SelectSingleNode("nonCashDividendTreatment"); if (nonCashDividendTreatmentNode != null) { if (nonCashDividendTreatmentNode.Attributes["href"] != null || nonCashDividendTreatmentNode.Attributes["id"] != null) { if (nonCashDividendTreatmentNode.Attributes["id"] != null) { nonCashDividendTreatmentIDRef_ = nonCashDividendTreatmentNode.Attributes["id"].Value; NonCashDividendTreatmentEnum ob = new NonCashDividendTreatmentEnum(nonCashDividendTreatmentNode); IDManager.SetID(nonCashDividendTreatmentIDRef_, ob); } else if (nonCashDividendTreatmentNode.Attributes["href"] != null) { nonCashDividendTreatmentIDRef_ = nonCashDividendTreatmentNode.Attributes["href"].Value; } else { nonCashDividendTreatment_ = new NonCashDividendTreatmentEnum(nonCashDividendTreatmentNode); } } else { nonCashDividendTreatment_ = new NonCashDividendTreatmentEnum(nonCashDividendTreatmentNode); } } XmlNode dividendCompositionNode = xmlNode.SelectSingleNode("dividendComposition"); if (dividendCompositionNode != null) { if (dividendCompositionNode.Attributes["href"] != null || dividendCompositionNode.Attributes["id"] != null) { if (dividendCompositionNode.Attributes["id"] != null) { dividendCompositionIDRef_ = dividendCompositionNode.Attributes["id"].Value; DividendCompositionEnum ob = new DividendCompositionEnum(dividendCompositionNode); IDManager.SetID(dividendCompositionIDRef_, ob); } else if (dividendCompositionNode.Attributes["href"] != null) { dividendCompositionIDRef_ = dividendCompositionNode.Attributes["href"].Value; } else { dividendComposition_ = new DividendCompositionEnum(dividendCompositionNode); } } else { dividendComposition_ = new DividendCompositionEnum(dividendCompositionNode); } } XmlNode specialDividendsNode = xmlNode.SelectSingleNode("specialDividends"); if (specialDividendsNode != null) { if (specialDividendsNode.Attributes["href"] != null || specialDividendsNode.Attributes["id"] != null) { if (specialDividendsNode.Attributes["id"] != null) { specialDividendsIDRef_ = specialDividendsNode.Attributes["id"].Value; XsdTypeBoolean ob = new XsdTypeBoolean(specialDividendsNode); IDManager.SetID(specialDividendsIDRef_, ob); } else if (specialDividendsNode.Attributes["href"] != null) { specialDividendsIDRef_ = specialDividendsNode.Attributes["href"].Value; } else { specialDividends_ = new XsdTypeBoolean(specialDividendsNode); } } else { specialDividends_ = new XsdTypeBoolean(specialDividendsNode); } } }
public LegAmount(XmlNode xmlNode) { XmlNodeList currencyNodeList = xmlNode.SelectNodes("currency"); if (currencyNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in currencyNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyIDRef = item.Attributes["id"].Name; IdentifiedCurrency ob = IdentifiedCurrency(); IDManager.SetID(currencyIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyIDRef = item.Attributes["href"].Name; } else { currency = new IdentifiedCurrency(item); } } } XmlNodeList determinationMethodNodeList = xmlNode.SelectNodes("determinationMethod"); if (determinationMethodNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in determinationMethodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { determinationMethodIDRef = item.Attributes["id"].Name; DeterminationMethod ob = DeterminationMethod(); IDManager.SetID(determinationMethodIDRef, ob); } else if (item.Attributes.ToString() == "href") { determinationMethodIDRef = item.Attributes["href"].Name; } else { determinationMethod = new DeterminationMethod(item); } } } XmlNodeList currencyReferenceNodeList = xmlNode.SelectNodes("currencyReference"); if (currencyReferenceNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in currencyReferenceNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyReferenceIDRef = item.Attributes["id"].Name; IdentifiedCurrencyReference ob = IdentifiedCurrencyReference(); IDManager.SetID(currencyReferenceIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyReferenceIDRef = item.Attributes["href"].Name; } else { currencyReference = new IdentifiedCurrencyReference(item); } } } XmlNodeList referenceAmountNodeList = xmlNode.SelectNodes("referenceAmount"); if (referenceAmountNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in referenceAmountNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { referenceAmountIDRef = item.Attributes["id"].Name; ReferenceAmount ob = ReferenceAmount(); IDManager.SetID(referenceAmountIDRef, ob); } else if (item.Attributes.ToString() == "href") { referenceAmountIDRef = item.Attributes["href"].Name; } else { referenceAmount = new ReferenceAmount(item); } } } XmlNodeList formulaNodeList = xmlNode.SelectNodes("formula"); if (formulaNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in formulaNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { formulaIDRef = item.Attributes["id"].Name; Formula ob = Formula(); IDManager.SetID(formulaIDRef, ob); } else if (item.Attributes.ToString() == "href") { formulaIDRef = item.Attributes["href"].Name; } else { formula = new Formula(item); } } } XmlNodeList encodedDescriptionNodeList = xmlNode.SelectNodes("encodedDescription"); if (encodedDescriptionNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in encodedDescriptionNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { encodedDescriptionIDRef = item.Attributes["id"].Name; XsdTypeBase64Binary ob = XsdTypeBase64Binary(); IDManager.SetID(encodedDescriptionIDRef, ob); } else if (item.Attributes.ToString() == "href") { encodedDescriptionIDRef = item.Attributes["href"].Name; } else { encodedDescription = new XsdTypeBase64Binary(item); } } } XmlNodeList calculationDatesNodeList = xmlNode.SelectNodes("calculationDates"); if (calculationDatesNodeList.Count > 1) { throw new Exception(); } foreach (XmlNode item in calculationDatesNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { calculationDatesIDRef = item.Attributes["id"].Name; AdjustableRelativeOrPeriodicDates ob = AdjustableRelativeOrPeriodicDates(); IDManager.SetID(calculationDatesIDRef, ob); } else if (item.Attributes.ToString() == "href") { calculationDatesIDRef = item.Attributes["href"].Name; } else { calculationDates = new AdjustableRelativeOrPeriodicDates(item); } } } }
public LegAmount(XmlNode xmlNode) { XmlNodeList currencyNodeList = xmlNode.SelectNodes("currency"); if (currencyNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in currencyNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyIDRef = item.Attributes["id"].Name; IdentifiedCurrency ob = IdentifiedCurrency(); IDManager.SetID(currencyIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyIDRef = item.Attributes["href"].Name; } else { currency = new IdentifiedCurrency(item); } } } XmlNodeList determinationMethodNodeList = xmlNode.SelectNodes("determinationMethod"); if (determinationMethodNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in determinationMethodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { determinationMethodIDRef = item.Attributes["id"].Name; DeterminationMethod ob = DeterminationMethod(); IDManager.SetID(determinationMethodIDRef, ob); } else if (item.Attributes.ToString() == "href") { determinationMethodIDRef = item.Attributes["href"].Name; } else { determinationMethod = new DeterminationMethod(item); } } } XmlNodeList currencyReferenceNodeList = xmlNode.SelectNodes("currencyReference"); if (currencyReferenceNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in currencyReferenceNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyReferenceIDRef = item.Attributes["id"].Name; IdentifiedCurrencyReference ob = IdentifiedCurrencyReference(); IDManager.SetID(currencyReferenceIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyReferenceIDRef = item.Attributes["href"].Name; } else { currencyReference = new IdentifiedCurrencyReference(item); } } } XmlNodeList referenceAmountNodeList = xmlNode.SelectNodes("referenceAmount"); if (referenceAmountNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in referenceAmountNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { referenceAmountIDRef = item.Attributes["id"].Name; ReferenceAmount ob = ReferenceAmount(); IDManager.SetID(referenceAmountIDRef, ob); } else if (item.Attributes.ToString() == "href") { referenceAmountIDRef = item.Attributes["href"].Name; } else { referenceAmount = new ReferenceAmount(item); } } } XmlNodeList formulaNodeList = xmlNode.SelectNodes("formula"); if (formulaNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in formulaNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { formulaIDRef = item.Attributes["id"].Name; Formula ob = Formula(); IDManager.SetID(formulaIDRef, ob); } else if (item.Attributes.ToString() == "href") { formulaIDRef = item.Attributes["href"].Name; } else { formula = new Formula(item); } } } XmlNodeList encodedDescriptionNodeList = xmlNode.SelectNodes("encodedDescription"); if (encodedDescriptionNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in encodedDescriptionNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { encodedDescriptionIDRef = item.Attributes["id"].Name; XsdTypeBase64Binary ob = XsdTypeBase64Binary(); IDManager.SetID(encodedDescriptionIDRef, ob); } else if (item.Attributes.ToString() == "href") { encodedDescriptionIDRef = item.Attributes["href"].Name; } else { encodedDescription = new XsdTypeBase64Binary(item); } } } XmlNodeList calculationDatesNodeList = xmlNode.SelectNodes("calculationDates"); if (calculationDatesNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in calculationDatesNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { calculationDatesIDRef = item.Attributes["id"].Name; AdjustableRelativeOrPeriodicDates ob = AdjustableRelativeOrPeriodicDates(); IDManager.SetID(calculationDatesIDRef, ob); } else if (item.Attributes.ToString() == "href") { calculationDatesIDRef = item.Attributes["href"].Name; } else { calculationDates = new AdjustableRelativeOrPeriodicDates(item); } } } }
public LegAmount(XmlNode xmlNode) { XmlNode currencyNode = xmlNode.SelectSingleNode("currency"); if (currencyNode != null) { if (currencyNode.Attributes["href"] != null || currencyNode.Attributes["id"] != null) { if (currencyNode.Attributes["id"] != null) { currencyIDRef_ = currencyNode.Attributes["id"].Value; IdentifiedCurrency ob = new IdentifiedCurrency(currencyNode); IDManager.SetID(currencyIDRef_, ob); } else if (currencyNode.Attributes["href"] != null) { currencyIDRef_ = currencyNode.Attributes["href"].Value; } else { currency_ = new IdentifiedCurrency(currencyNode); } } else { currency_ = new IdentifiedCurrency(currencyNode); } } XmlNode determinationMethodNode = xmlNode.SelectSingleNode("determinationMethod"); if (determinationMethodNode != null) { if (determinationMethodNode.Attributes["href"] != null || determinationMethodNode.Attributes["id"] != null) { if (determinationMethodNode.Attributes["id"] != null) { determinationMethodIDRef_ = determinationMethodNode.Attributes["id"].Value; DeterminationMethod ob = new DeterminationMethod(determinationMethodNode); IDManager.SetID(determinationMethodIDRef_, ob); } else if (determinationMethodNode.Attributes["href"] != null) { determinationMethodIDRef_ = determinationMethodNode.Attributes["href"].Value; } else { determinationMethod_ = new DeterminationMethod(determinationMethodNode); } } else { determinationMethod_ = new DeterminationMethod(determinationMethodNode); } } XmlNode currencyReferenceNode = xmlNode.SelectSingleNode("currencyReference"); if (currencyReferenceNode != null) { if (currencyReferenceNode.Attributes["href"] != null || currencyReferenceNode.Attributes["id"] != null) { if (currencyReferenceNode.Attributes["id"] != null) { currencyReferenceIDRef_ = currencyReferenceNode.Attributes["id"].Value; IdentifiedCurrencyReference ob = new IdentifiedCurrencyReference(currencyReferenceNode); IDManager.SetID(currencyReferenceIDRef_, ob); } else if (currencyReferenceNode.Attributes["href"] != null) { currencyReferenceIDRef_ = currencyReferenceNode.Attributes["href"].Value; } else { currencyReference_ = new IdentifiedCurrencyReference(currencyReferenceNode); } } else { currencyReference_ = new IdentifiedCurrencyReference(currencyReferenceNode); } } XmlNode referenceAmountNode = xmlNode.SelectSingleNode("referenceAmount"); if (referenceAmountNode != null) { if (referenceAmountNode.Attributes["href"] != null || referenceAmountNode.Attributes["id"] != null) { if (referenceAmountNode.Attributes["id"] != null) { referenceAmountIDRef_ = referenceAmountNode.Attributes["id"].Value; ReferenceAmount ob = new ReferenceAmount(referenceAmountNode); IDManager.SetID(referenceAmountIDRef_, ob); } else if (referenceAmountNode.Attributes["href"] != null) { referenceAmountIDRef_ = referenceAmountNode.Attributes["href"].Value; } else { referenceAmount_ = new ReferenceAmount(referenceAmountNode); } } else { referenceAmount_ = new ReferenceAmount(referenceAmountNode); } } XmlNode formulaNode = xmlNode.SelectSingleNode("formula"); if (formulaNode != null) { if (formulaNode.Attributes["href"] != null || formulaNode.Attributes["id"] != null) { if (formulaNode.Attributes["id"] != null) { formulaIDRef_ = formulaNode.Attributes["id"].Value; Formula ob = new Formula(formulaNode); IDManager.SetID(formulaIDRef_, ob); } else if (formulaNode.Attributes["href"] != null) { formulaIDRef_ = formulaNode.Attributes["href"].Value; } else { formula_ = new Formula(formulaNode); } } else { formula_ = new Formula(formulaNode); } } XmlNode encodedDescriptionNode = xmlNode.SelectSingleNode("encodedDescription"); if (encodedDescriptionNode != null) { if (encodedDescriptionNode.Attributes["href"] != null || encodedDescriptionNode.Attributes["id"] != null) { if (encodedDescriptionNode.Attributes["id"] != null) { encodedDescriptionIDRef_ = encodedDescriptionNode.Attributes["id"].Value; XsdTypeBase64Binary ob = new XsdTypeBase64Binary(encodedDescriptionNode); IDManager.SetID(encodedDescriptionIDRef_, ob); } else if (encodedDescriptionNode.Attributes["href"] != null) { encodedDescriptionIDRef_ = encodedDescriptionNode.Attributes["href"].Value; } else { encodedDescription_ = new XsdTypeBase64Binary(encodedDescriptionNode); } } else { encodedDescription_ = new XsdTypeBase64Binary(encodedDescriptionNode); } } XmlNode calculationDatesNode = xmlNode.SelectSingleNode("calculationDates"); if (calculationDatesNode != null) { if (calculationDatesNode.Attributes["href"] != null || calculationDatesNode.Attributes["id"] != null) { if (calculationDatesNode.Attributes["id"] != null) { calculationDatesIDRef_ = calculationDatesNode.Attributes["id"].Value; AdjustableRelativeOrPeriodicDates ob = new AdjustableRelativeOrPeriodicDates(calculationDatesNode); IDManager.SetID(calculationDatesIDRef_, ob); } else if (calculationDatesNode.Attributes["href"] != null) { calculationDatesIDRef_ = calculationDatesNode.Attributes["href"].Value; } else { calculationDates_ = new AdjustableRelativeOrPeriodicDates(calculationDatesNode); } } else { calculationDates_ = new AdjustableRelativeOrPeriodicDates(calculationDatesNode); } } }
public DividendConditions(XmlNode xmlNode) { XmlNodeList dividendReinvestmentNodeList = xmlNode.SelectNodes("dividendReinvestment"); if (dividendReinvestmentNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendReinvestmentNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendReinvestmentIDRef = item.Attributes["id"].Name; XsdTypeBoolean ob = XsdTypeBoolean(); IDManager.SetID(dividendReinvestmentIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendReinvestmentIDRef = item.Attributes["href"].Name; } else { dividendReinvestment = new XsdTypeBoolean(item); } } } XmlNodeList dividendEntitlementNodeList = xmlNode.SelectNodes("dividendEntitlement"); if (dividendEntitlementNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendEntitlementNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendEntitlementIDRef = item.Attributes["id"].Name; DividendEntitlementEnum ob = DividendEntitlementEnum(); IDManager.SetID(dividendEntitlementIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendEntitlementIDRef = item.Attributes["href"].Name; } else { dividendEntitlement = new DividendEntitlementEnum(item); } } } XmlNodeList dividendAmountNodeList = xmlNode.SelectNodes("dividendAmount"); if (dividendAmountNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendAmountNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendAmountIDRef = item.Attributes["id"].Name; DividendAmountTypeEnum ob = DividendAmountTypeEnum(); IDManager.SetID(dividendAmountIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendAmountIDRef = item.Attributes["href"].Name; } else { dividendAmount = new DividendAmountTypeEnum(item); } } } XmlNodeList dividendPaymentDateNodeList = xmlNode.SelectNodes("dividendPaymentDate"); if (dividendPaymentDateNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendPaymentDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPaymentDateIDRef = item.Attributes["id"].Name; DividendPaymentDate ob = DividendPaymentDate(); IDManager.SetID(dividendPaymentDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPaymentDateIDRef = item.Attributes["href"].Name; } else { dividendPaymentDate = new DividendPaymentDate(item); } } } XmlNodeList dividendPeriodEffectiveDateNodeList = xmlNode.SelectNodes("dividendPeriodEffectiveDate"); if (dividendPeriodEffectiveDateNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendPeriodEffectiveDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPeriodEffectiveDateIDRef = item.Attributes["id"].Name; DateReference ob = DateReference(); IDManager.SetID(dividendPeriodEffectiveDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPeriodEffectiveDateIDRef = item.Attributes["href"].Name; } else { dividendPeriodEffectiveDate = new DateReference(item); } } } XmlNodeList dividendPeriodEndDateNodeList = xmlNode.SelectNodes("dividendPeriodEndDate"); if (dividendPeriodEndDateNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendPeriodEndDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPeriodEndDateIDRef = item.Attributes["id"].Name; DateReference ob = DateReference(); IDManager.SetID(dividendPeriodEndDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPeriodEndDateIDRef = item.Attributes["href"].Name; } else { dividendPeriodEndDate = new DateReference(item); } } } XmlNodeList dividendPeriodNodeList = xmlNode.SelectNodes("dividendPeriod"); if (dividendPeriodNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendPeriodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendPeriodIDRef = item.Attributes["id"].Name; DividendPeriodEnum ob = DividendPeriodEnum(); IDManager.SetID(dividendPeriodIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendPeriodIDRef = item.Attributes["href"].Name; } else { dividendPeriod = new DividendPeriodEnum(item); } } } XmlNodeList extraOrdinaryDividendsNodeList = xmlNode.SelectNodes("extraOrdinaryDividends"); if (extraOrdinaryDividendsNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in extraOrdinaryDividendsNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { extraOrdinaryDividendsIDRef = item.Attributes["id"].Name; PartyReference ob = PartyReference(); IDManager.SetID(extraOrdinaryDividendsIDRef, ob); } else if (item.Attributes.ToString() == "href") { extraOrdinaryDividendsIDRef = item.Attributes["href"].Name; } else { extraOrdinaryDividends = new PartyReference(item); } } } XmlNodeList excessDividendAmountNodeList = xmlNode.SelectNodes("excessDividendAmount"); if (excessDividendAmountNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in excessDividendAmountNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { excessDividendAmountIDRef = item.Attributes["id"].Name; DividendAmountTypeEnum ob = DividendAmountTypeEnum(); IDManager.SetID(excessDividendAmountIDRef, ob); } else if (item.Attributes.ToString() == "href") { excessDividendAmountIDRef = item.Attributes["href"].Name; } else { excessDividendAmount = new DividendAmountTypeEnum(item); } } } XmlNodeList currencyNodeList = xmlNode.SelectNodes("currency"); if (currencyNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in currencyNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyIDRef = item.Attributes["id"].Name; IdentifiedCurrency ob = IdentifiedCurrency(); IDManager.SetID(currencyIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyIDRef = item.Attributes["href"].Name; } else { currency = new IdentifiedCurrency(item); } } } XmlNodeList determinationMethodNodeList = xmlNode.SelectNodes("determinationMethod"); if (determinationMethodNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in determinationMethodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { determinationMethodIDRef = item.Attributes["id"].Name; DeterminationMethod ob = DeterminationMethod(); IDManager.SetID(determinationMethodIDRef, ob); } else if (item.Attributes.ToString() == "href") { determinationMethodIDRef = item.Attributes["href"].Name; } else { determinationMethod = new DeterminationMethod(item); } } } XmlNodeList currencyReferenceNodeList = xmlNode.SelectNodes("currencyReference"); if (currencyReferenceNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in currencyReferenceNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { currencyReferenceIDRef = item.Attributes["id"].Name; IdentifiedCurrencyReference ob = IdentifiedCurrencyReference(); IDManager.SetID(currencyReferenceIDRef, ob); } else if (item.Attributes.ToString() == "href") { currencyReferenceIDRef = item.Attributes["href"].Name; } else { currencyReference = new IdentifiedCurrencyReference(item); } } } XmlNodeList dividendFxTriggerDateNodeList = xmlNode.SelectNodes("dividendFxTriggerDate"); if (dividendFxTriggerDateNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendFxTriggerDateNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendFxTriggerDateIDRef = item.Attributes["id"].Name; DividendPaymentDate ob = DividendPaymentDate(); IDManager.SetID(dividendFxTriggerDateIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendFxTriggerDateIDRef = item.Attributes["href"].Name; } else { dividendFxTriggerDate = new DividendPaymentDate(item); } } } XmlNodeList interestAccrualsMethodNodeList = xmlNode.SelectNodes("interestAccrualsMethod"); if (interestAccrualsMethodNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in interestAccrualsMethodNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { interestAccrualsMethodIDRef = item.Attributes["id"].Name; InterestAccrualsCompoundingMethod ob = InterestAccrualsCompoundingMethod(); IDManager.SetID(interestAccrualsMethodIDRef, ob); } else if (item.Attributes.ToString() == "href") { interestAccrualsMethodIDRef = item.Attributes["href"].Name; } else { interestAccrualsMethod = new InterestAccrualsCompoundingMethod(item); } } } XmlNodeList numberOfIndexUnitsNodeList = xmlNode.SelectNodes("numberOfIndexUnits"); if (numberOfIndexUnitsNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in numberOfIndexUnitsNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { numberOfIndexUnitsIDRef = item.Attributes["id"].Name; NonNegativeDecimal ob = NonNegativeDecimal(); IDManager.SetID(numberOfIndexUnitsIDRef, ob); } else if (item.Attributes.ToString() == "href") { numberOfIndexUnitsIDRef = item.Attributes["href"].Name; } else { numberOfIndexUnits = new NonNegativeDecimal(item); } } } XmlNodeList declaredCashDividendPercentageNodeList = xmlNode.SelectNodes("declaredCashDividendPercentage"); if (declaredCashDividendPercentageNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in declaredCashDividendPercentageNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { declaredCashDividendPercentageIDRef = item.Attributes["id"].Name; NonNegativeDecimal ob = NonNegativeDecimal(); IDManager.SetID(declaredCashDividendPercentageIDRef, ob); } else if (item.Attributes.ToString() == "href") { declaredCashDividendPercentageIDRef = item.Attributes["href"].Name; } else { declaredCashDividendPercentage = new NonNegativeDecimal(item); } } } XmlNodeList declaredCashEquivalentDividendPercentageNodeList = xmlNode.SelectNodes("declaredCashEquivalentDividendPercentage"); if (declaredCashEquivalentDividendPercentageNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in declaredCashEquivalentDividendPercentageNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { declaredCashEquivalentDividendPercentageIDRef = item.Attributes["id"].Name; NonNegativeDecimal ob = NonNegativeDecimal(); IDManager.SetID(declaredCashEquivalentDividendPercentageIDRef, ob); } else if (item.Attributes.ToString() == "href") { declaredCashEquivalentDividendPercentageIDRef = item.Attributes["href"].Name; } else { declaredCashEquivalentDividendPercentage = new NonNegativeDecimal(item); } } } XmlNodeList nonCashDividendTreatmentNodeList = xmlNode.SelectNodes("nonCashDividendTreatment"); if (nonCashDividendTreatmentNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in nonCashDividendTreatmentNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { nonCashDividendTreatmentIDRef = item.Attributes["id"].Name; NonCashDividendTreatmentEnum ob = NonCashDividendTreatmentEnum(); IDManager.SetID(nonCashDividendTreatmentIDRef, ob); } else if (item.Attributes.ToString() == "href") { nonCashDividendTreatmentIDRef = item.Attributes["href"].Name; } else { nonCashDividendTreatment = new NonCashDividendTreatmentEnum(item); } } } XmlNodeList dividendCompositionNodeList = xmlNode.SelectNodes("dividendComposition"); if (dividendCompositionNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in dividendCompositionNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { dividendCompositionIDRef = item.Attributes["id"].Name; DividendCompositionEnum ob = DividendCompositionEnum(); IDManager.SetID(dividendCompositionIDRef, ob); } else if (item.Attributes.ToString() == "href") { dividendCompositionIDRef = item.Attributes["href"].Name; } else { dividendComposition = new DividendCompositionEnum(item); } } } XmlNodeList specialDividendsNodeList = xmlNode.SelectNodes("specialDividends"); if (specialDividendsNodeList.Count > 1 ) { throw new Exception(); } foreach (XmlNode item in specialDividendsNodeList) { if (item.Attributes["href"] != null || item.Attributes["id"] == null) { if (item.Attributes["id"] != null) { specialDividendsIDRef = item.Attributes["id"].Name; XsdTypeBoolean ob = XsdTypeBoolean(); IDManager.SetID(specialDividendsIDRef, ob); } else if (item.Attributes.ToString() == "href") { specialDividendsIDRef = item.Attributes["href"].Name; } else { specialDividends = new XsdTypeBoolean(item); } } } }