#![allow(clippy::all)]
#![allow(non_snake_case, non_camel_case_types, dead_code, unused_imports)]
#![allow(non_local_definitions)]
use std::str::FromStr;
use crate::validate::Validate;
use yaserde_derive::{YaDeserialize, YaSerialize};
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AccountAndBalance42 {
#[yaserde(rename = "SfkpgAcct")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgAcct"))]
pub sfkpg_acct: Max35Text,
#[yaserde(rename = "AcctOwnr")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnr"))]
pub acct_ownr: PartyIdentification127Choice,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafekeepingPlaceFormat28Choice,
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: CorporateActionBalanceDetails29,
}
impl Validate for AccountAndBalance42 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AccountIdentification10 {
#[yaserde(rename = "IdCd")]
#[cfg_attr(feature = "serde", serde(rename = "IdCd"))]
pub id_cd: SafekeepingAccountIdentification1Code,
}
impl Validate for AccountIdentification10 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AccountIdentification41Choice {
#[yaserde(rename = "ForAllAccts")]
#[cfg_attr(feature = "serde", serde(rename = "ForAllAccts"))]
pub for_all_accts: Option<AccountIdentification10>,
#[yaserde(rename = "AcctsListAndBalDtls")]
#[cfg_attr(feature = "serde", serde(rename = "AcctsListAndBalDtls"))]
pub accts_list_and_bal_dtls: Vec<AccountAndBalance42>,
}
impl Validate for AccountIdentification41Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveCurrencyAnd13DecimalAmountSimpleType (pub String);
crate::simple_type!(ActiveCurrencyAnd13DecimalAmountSimpleType);
impl Validate for ActiveCurrencyAnd13DecimalAmountSimpleType {
fn validate(&self) -> Result<(), String> {
if self.0 < "0".parse::<String>().unwrap() {
return Err(format!("MinInclusive validation error: invalid value of 0! \nExpected: 0 >= 0.\nActual: 0 == {}", self.0));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct ActiveCurrencyAnd13DecimalAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
}
impl Validate for ActiveCurrencyAnd13DecimalAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveCurrencyAndAmountSimpleType (pub String);
crate::simple_type!(ActiveCurrencyAndAmountSimpleType);
impl Validate for ActiveCurrencyAndAmountSimpleType {
fn validate(&self) -> Result<(), String> {
if self.0 < "0".parse::<String>().unwrap() {
return Err(format!("MinInclusive validation error: invalid value of 0! \nExpected: 0 >= 0.\nActual: 0 == {}", self.0));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct ActiveCurrencyAndAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
}
impl Validate for ActiveCurrencyAndAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveCurrencyCode (pub String);
crate::simple_type!(ActiveCurrencyCode);
impl Validate for ActiveCurrencyCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveOrHistoricCurrencyCode (pub String);
crate::simple_type!(ActiveOrHistoricCurrencyCode);
impl Validate for ActiveOrHistoricCurrencyCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum AdditionalBusinessProcess6Code {
#[yaserde(rename = "CLAI")]
#[cfg_attr(feature = "serde", serde(rename = "CLAI"))]
Clai,
#[yaserde(rename = "REVR")]
#[cfg_attr(feature = "serde", serde(rename = "REVR"))]
Revr,
#[yaserde(rename = "TAXR")]
#[cfg_attr(feature = "serde", serde(rename = "TAXR"))]
Taxr,
#[yaserde(rename = "PPUT")]
#[cfg_attr(feature = "serde", serde(rename = "PPUT"))]
Pput,
#[yaserde(rename = "PPRE")]
#[cfg_attr(feature = "serde", serde(rename = "PPRE"))]
Ppre,
#[yaserde(rename = "FPRE")]
#[cfg_attr(feature = "serde", serde(rename = "FPRE"))]
Fpre,
#[yaserde(rename = "REAC")]
#[cfg_attr(feature = "serde", serde(rename = "REAC"))]
Reac,
__Unknown__(String),
}
impl Default for AdditionalBusinessProcess6Code {
fn default() -> AdditionalBusinessProcess6Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AdditionalBusinessProcess6Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AdditionalBusinessProcessFormat10Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<AdditionalBusinessProcess6Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for AdditionalBusinessProcessFormat10Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum AddressType2Code {
#[yaserde(rename = "ADDR")]
#[cfg_attr(feature = "serde", serde(rename = "ADDR"))]
Addr,
#[yaserde(rename = "PBOX")]
#[cfg_attr(feature = "serde", serde(rename = "PBOX"))]
Pbox,
#[yaserde(rename = "HOME")]
#[cfg_attr(feature = "serde", serde(rename = "HOME"))]
Home,
#[yaserde(rename = "BIZZ")]
#[cfg_attr(feature = "serde", serde(rename = "BIZZ"))]
Bizz,
#[yaserde(rename = "MLTO")]
#[cfg_attr(feature = "serde", serde(rename = "MLTO"))]
Mlto,
#[yaserde(rename = "DLVY")]
#[cfg_attr(feature = "serde", serde(rename = "DLVY"))]
Dlvy,
__Unknown__(String),
}
impl Default for AddressType2Code {
fn default() -> AddressType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AddressType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountAndQuantityRatio4 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: DecimalNumber,
}
impl Validate for AmountAndQuantityRatio4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountAndRateStatus1 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus1Code,
}
impl Validate for AmountAndRateStatus1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountPrice2 {
#[yaserde(rename = "AmtPricTp")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricTp"))]
pub amt_pric_tp: AmountPriceType2Code,
#[yaserde(rename = "PricVal")]
#[cfg_attr(feature = "serde", serde(rename = "PricVal"))]
pub pric_val: ActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPrice2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountPrice3 {
#[yaserde(rename = "AmtPricTp")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricTp"))]
pub amt_pric_tp: AmountPriceType1Code,
#[yaserde(rename = "PricVal")]
#[cfg_attr(feature = "serde", serde(rename = "PricVal"))]
pub pric_val: ActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPrice3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountPrice6 {
#[yaserde(rename = "AmtPricTp")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricTp"))]
pub amt_pric_tp: AmountPriceType3Code,
#[yaserde(rename = "PricVal")]
#[cfg_attr(feature = "serde", serde(rename = "PricVal"))]
pub pric_val: ActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPrice6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountPricePerAmount2 {
#[yaserde(rename = "AmtPricTp")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricTp"))]
pub amt_pric_tp: AmountPriceType1Code,
#[yaserde(rename = "PricVal")]
#[cfg_attr(feature = "serde", serde(rename = "PricVal"))]
pub pric_val: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPricePerAmount2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountPricePerFinancialInstrumentQuantity6 {
#[yaserde(rename = "AmtPricTp")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricTp"))]
pub amt_pric_tp: AmountPriceType1Code,
#[yaserde(rename = "PricVal")]
#[cfg_attr(feature = "serde", serde(rename = "PricVal"))]
pub pric_val: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "FinInstrmQty")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmQty"))]
pub fin_instrm_qty: FinancialInstrumentQuantity1Choice,
}
impl Validate for AmountPricePerFinancialInstrumentQuantity6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum AmountPriceType1Code {
#[yaserde(rename = "ACTU")]
#[cfg_attr(feature = "serde", serde(rename = "ACTU"))]
Actu,
#[yaserde(rename = "DISC")]
#[cfg_attr(feature = "serde", serde(rename = "DISC"))]
Disc,
#[yaserde(rename = "PLOT")]
#[cfg_attr(feature = "serde", serde(rename = "PLOT"))]
Plot,
#[yaserde(rename = "PREM")]
#[cfg_attr(feature = "serde", serde(rename = "PREM"))]
Prem,
__Unknown__(String),
}
impl Default for AmountPriceType1Code {
fn default() -> AmountPriceType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AmountPriceType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum AmountPriceType2Code {
#[yaserde(rename = "ACTU")]
#[cfg_attr(feature = "serde", serde(rename = "ACTU"))]
Actu,
__Unknown__(String),
}
impl Default for AmountPriceType2Code {
fn default() -> AmountPriceType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AmountPriceType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum AmountPriceType3Code {
#[yaserde(rename = "ACTU")]
#[cfg_attr(feature = "serde", serde(rename = "ACTU"))]
Actu,
#[yaserde(rename = "PLOT")]
#[cfg_attr(feature = "serde", serde(rename = "PLOT"))]
Plot,
__Unknown__(String),
}
impl Default for AmountPriceType3Code {
fn default() -> AmountPriceType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AmountPriceType3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct AmountToAmountRatio2 {
#[yaserde(rename = "Amt1")]
#[cfg_attr(feature = "serde", serde(rename = "Amt1"))]
pub amt_1: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "Amt2")]
#[cfg_attr(feature = "serde", serde(rename = "Amt2"))]
pub amt_2: ActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountToAmountRatio2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct AnyBICDec2014Identifier (pub String);
crate::simple_type!(AnyBICDec2014Identifier);
impl Validate for AnyBICDec2014Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct BalanceFormat5Choice {
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: Option<SignedQuantityFormat7>,
#[yaserde(rename = "ElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "ElgblBal"))]
pub elgbl_bal: Option<SignedQuantityFormat6>,
#[yaserde(rename = "NotElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "NotElgblBal"))]
pub not_elgbl_bal: Option<SignedQuantityFormat6>,
}
impl Validate for BalanceFormat5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct BalanceFormat6Choice {
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: Option<SignedQuantityFormat7>,
#[yaserde(rename = "ElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "ElgblBal"))]
pub elgbl_bal: Option<SignedQuantityFormat6>,
#[yaserde(rename = "NotElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "NotElgblBal"))]
pub not_elgbl_bal: Option<SignedQuantityFormat6>,
#[yaserde(rename = "FullPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "FullPrdUnits"))]
pub full_prd_units: Option<SignedQuantityFormat6>,
#[yaserde(rename = "PartWayPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "PartWayPrdUnits"))]
pub part_way_prd_units: Option<SignedQuantityFormat6>,
}
impl Validate for BalanceFormat6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct BaseOne14Rate (pub String);
crate::simple_type!(BaseOne14Rate);
impl Validate for BaseOne14Rate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct BaseOneRate (pub String);
crate::simple_type!(BaseOneRate);
impl Validate for BaseOneRate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum BeneficiaryCertificationType4Code {
#[yaserde(rename = "ACCI")]
#[cfg_attr(feature = "serde", serde(rename = "ACCI"))]
Acci,
#[yaserde(rename = "DOMI")]
#[cfg_attr(feature = "serde", serde(rename = "DOMI"))]
Domi,
#[yaserde(rename = "NDOM")]
#[cfg_attr(feature = "serde", serde(rename = "NDOM"))]
Ndom,
#[yaserde(rename = "FULL")]
#[cfg_attr(feature = "serde", serde(rename = "FULL"))]
Full,
#[yaserde(rename = "NCOM")]
#[cfg_attr(feature = "serde", serde(rename = "NCOM"))]
Ncom,
#[yaserde(rename = "QIBB")]
#[cfg_attr(feature = "serde", serde(rename = "QIBB"))]
Qibb,
#[yaserde(rename = "TRBD")]
#[cfg_attr(feature = "serde", serde(rename = "TRBD"))]
Trbd,
#[yaserde(rename = "PAPW")]
#[cfg_attr(feature = "serde", serde(rename = "PAPW"))]
Papw,
#[yaserde(rename = "PABD")]
#[cfg_attr(feature = "serde", serde(rename = "PABD"))]
Pabd,
#[yaserde(rename = "FRAC")]
#[cfg_attr(feature = "serde", serde(rename = "FRAC"))]
Frac,
__Unknown__(String),
}
impl Default for BeneficiaryCertificationType4Code {
fn default() -> BeneficiaryCertificationType4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for BeneficiaryCertificationType4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct BeneficiaryCertificationType9Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<BeneficiaryCertificationType4Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for BeneficiaryCertificationType9Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct BorrowerLendingDeadline5 {
#[yaserde(rename = "StockLndgDdln")]
#[cfg_attr(feature = "serde", serde(rename = "StockLndgDdln"))]
pub stock_lndg_ddln: DateFormat43Choice,
#[yaserde(rename = "Brrwr")]
#[cfg_attr(feature = "serde", serde(rename = "Brrwr"))]
pub brrwr: PartyIdentification127Choice,
}
impl Validate for BorrowerLendingDeadline5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Cfioct2015Identifier (pub String);
crate::simple_type!(Cfioct2015Identifier);
impl Validate for Cfioct2015Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CashAccountIdentification5Choice {
#[yaserde(rename = "IBAN")]
#[cfg_attr(feature = "serde", serde(rename = "IBAN"))]
pub iban: Option<Iban2007Identifier>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max34Text>,
}
impl Validate for CashAccountIdentification5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CashOption72 {
#[yaserde(rename = "CdtDbtInd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbtInd"))]
pub cdt_dbt_ind: CreditDebitCode,
#[yaserde(rename = "CtrctlPmtInd")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctlPmtInd"))]
pub ctrctl_pmt_ind: Payment1Code,
#[yaserde(rename = "NonElgblPrcdsInd")]
#[cfg_attr(feature = "serde", serde(rename = "NonElgblPrcdsInd"))]
pub non_elgbl_prcds_ind: NonEligibleProceedsIndicator3Choice,
#[yaserde(rename = "IssrOfferrTaxbltyInd")]
#[cfg_attr(feature = "serde", serde(rename = "IssrOfferrTaxbltyInd"))]
pub issr_offerr_taxblty_ind: IssuerOfferorTaxabilityIndicator1Choice,
#[yaserde(rename = "IncmTp")]
#[cfg_attr(feature = "serde", serde(rename = "IncmTp"))]
pub incm_tp: GenericIdentification30,
#[yaserde(rename = "XmptnTp")]
#[cfg_attr(feature = "serde", serde(rename = "XmptnTp"))]
pub xmptn_tp: Vec<GenericIdentification30>,
#[yaserde(rename = "CtryOfIncmSrc")]
#[cfg_attr(feature = "serde", serde(rename = "CtryOfIncmSrc"))]
pub ctry_of_incm_src: CountryCode,
#[yaserde(rename = "CshAcctId")]
#[cfg_attr(feature = "serde", serde(rename = "CshAcctId"))]
pub csh_acct_id: CashAccountIdentification5Choice,
#[yaserde(rename = "AmtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "AmtDtls"))]
pub amt_dtls: CorporateActionAmounts55,
#[yaserde(rename = "DtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DtDtls"))]
pub dt_dtls: CorporateActionDate62,
#[yaserde(rename = "FXDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FXDtls"))]
pub fx_dtls: ForeignExchangeTerms24,
#[yaserde(rename = "RateAndAmtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RateAndAmtDtls"))]
pub rate_and_amt_dtls: Rate36,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: PriceDetails22,
}
impl Validate for CashOption72 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct ClassificationType32Choice {
#[yaserde(rename = "ClssfctnFinInstrm")]
#[cfg_attr(feature = "serde", serde(rename = "ClssfctnFinInstrm"))]
pub clssfctn_fin_instrm: Option<Cfioct2015Identifier>,
#[yaserde(rename = "AltrnClssfctn")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnClssfctn"))]
pub altrn_clssfctn: Option<GenericIdentification36>,
}
impl Validate for ClassificationType32Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateAction42 {
#[yaserde(rename = "DtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DtDtls"))]
pub dt_dtls: CorporateActionDate63,
#[yaserde(rename = "EvtStag")]
#[cfg_attr(feature = "serde", serde(rename = "EvtStag"))]
pub evt_stag: CorporateActionEventStageFormat14Choice,
#[yaserde(rename = "AddtlBizPrcInd")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlBizPrcInd"))]
pub addtl_biz_prc_ind: AdditionalBusinessProcessFormat10Choice,
#[yaserde(rename = "LtryTp")]
#[cfg_attr(feature = "serde", serde(rename = "LtryTp"))]
pub ltry_tp: LotteryTypeFormat4Choice,
#[yaserde(rename = "SctiesQty")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesQty"))]
pub scties_qty: CorporateActionQuantity9,
}
impl Validate for CorporateAction42 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionAmounts55 {
#[yaserde(rename = "GrssCshAmt")]
#[cfg_attr(feature = "serde", serde(rename = "GrssCshAmt"))]
pub grss_csh_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "NetCshAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NetCshAmt"))]
pub net_csh_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "SlctnFees")]
#[cfg_attr(feature = "serde", serde(rename = "SlctnFees"))]
pub slctn_fees: ActiveCurrencyAndAmount,
#[yaserde(rename = "CshInLieuOfShr")]
#[cfg_attr(feature = "serde", serde(rename = "CshInLieuOfShr"))]
pub csh_in_lieu_of_shr: ActiveCurrencyAndAmount,
#[yaserde(rename = "CptlGn")]
#[cfg_attr(feature = "serde", serde(rename = "CptlGn"))]
pub cptl_gn: ActiveCurrencyAndAmount,
#[yaserde(rename = "IntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstAmt"))]
pub intrst_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "MktClmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "MktClmAmt"))]
pub mkt_clm_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "IndmntyAmt")]
#[cfg_attr(feature = "serde", serde(rename = "IndmntyAmt"))]
pub indmnty_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "ManfctrdDvddPmtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ManfctrdDvddPmtAmt"))]
pub manfctrd_dvdd_pmt_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "RinvstmtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RinvstmtAmt"))]
pub rinvstmt_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "FullyFrnkdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FullyFrnkdAmt"))]
pub fully_frnkd_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "UfrnkdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "UfrnkdAmt"))]
pub ufrnkd_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "SndryOrOthrAmt")]
#[cfg_attr(feature = "serde", serde(rename = "SndryOrOthrAmt"))]
pub sndry_or_othr_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "TaxFreeAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxFreeAmt"))]
pub tax_free_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "TaxDfrrdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxDfrrdAmt"))]
pub tax_dfrrd_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "ValAddedTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ValAddedTaxAmt"))]
pub val_added_tax_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "StmpDtyAmt")]
#[cfg_attr(feature = "serde", serde(rename = "StmpDtyAmt"))]
pub stmp_dty_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "TaxRclmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxRclmAmt"))]
pub tax_rclm_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "TaxCdtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCdtAmt"))]
pub tax_cdt_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "AddtlTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTaxAmt"))]
pub addtl_tax_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "WhldgTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxAmt"))]
pub whldg_tax_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "ScndLvlTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTaxAmt"))]
pub scnd_lvl_tax_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "FsclStmpAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FsclStmpAmt"))]
pub fscl_stmp_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "ExctgBrkrAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ExctgBrkrAmt"))]
pub exctg_brkr_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "PngAgtComssnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "PngAgtComssnAmt"))]
pub png_agt_comssn_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "LclBrkrComssnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "LclBrkrComssnAmt"))]
pub lcl_brkr_comssn_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "RgltryFeesAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RgltryFeesAmt"))]
pub rgltry_fees_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "ShppgFeesAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ShppgFeesAmt"))]
pub shppg_fees_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "ChrgsAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsAmt"))]
pub chrgs_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "EntitldAmt")]
#[cfg_attr(feature = "serde", serde(rename = "EntitldAmt"))]
pub entitld_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "OrgnlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlAmt"))]
pub orgnl_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "AcrdIntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AcrdIntrstAmt"))]
pub acrd_intrst_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "IncmPrtn")]
#[cfg_attr(feature = "serde", serde(rename = "IncmPrtn"))]
pub incm_prtn: ActiveCurrencyAndAmount,
#[yaserde(rename = "EqulstnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "EqulstnAmt"))]
pub equlstn_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "FATCATaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FATCATaxAmt"))]
pub fatca_tax_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "NRATaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NRATaxAmt"))]
pub nra_tax_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "BckUpWhldgTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "BckUpWhldgTaxAmt"))]
pub bck_up_whldg_tax_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "TaxOnIncmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnIncmAmt"))]
pub tax_on_incm_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "TxTax")]
#[cfg_attr(feature = "serde", serde(rename = "TxTax"))]
pub tx_tax: ActiveCurrencyAndAmount,
#[yaserde(rename = "DmdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdAmt"))]
pub dmd_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "FrgnIncmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FrgnIncmAmt"))]
pub frgn_incm_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "DmdDvddAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdDvddAmt"))]
pub dmd_dvdd_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "DmdFndAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdFndAmt"))]
pub dmd_fnd_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "DmdIntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdIntrstAmt"))]
pub dmd_intrst_amt: ActiveCurrencyAndAmount,
#[yaserde(rename = "DmdRyltsAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdRyltsAmt"))]
pub dmd_rylts_amt: ActiveCurrencyAndAmount,
}
impl Validate for CorporateActionAmounts55 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionBalanceDetails29 {
#[yaserde(rename = "TtlElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "TtlElgblBal"))]
pub ttl_elgbl_bal: TotalEligibleBalanceFormat8,
#[yaserde(rename = "BlckdBal")]
#[cfg_attr(feature = "serde", serde(rename = "BlckdBal"))]
pub blckd_bal: BalanceFormat5Choice,
#[yaserde(rename = "BrrwdBal")]
#[cfg_attr(feature = "serde", serde(rename = "BrrwdBal"))]
pub brrwd_bal: BalanceFormat5Choice,
#[yaserde(rename = "CollInBal")]
#[cfg_attr(feature = "serde", serde(rename = "CollInBal"))]
pub coll_in_bal: BalanceFormat5Choice,
#[yaserde(rename = "CollOutBal")]
#[cfg_attr(feature = "serde", serde(rename = "CollOutBal"))]
pub coll_out_bal: BalanceFormat5Choice,
#[yaserde(rename = "OnLnBal")]
#[cfg_attr(feature = "serde", serde(rename = "OnLnBal"))]
pub on_ln_bal: BalanceFormat5Choice,
#[yaserde(rename = "PdgDlvryBal")]
#[cfg_attr(feature = "serde", serde(rename = "PdgDlvryBal"))]
pub pdg_dlvry_bal: Vec<BalanceFormat6Choice>,
#[yaserde(rename = "PdgRctBal")]
#[cfg_attr(feature = "serde", serde(rename = "PdgRctBal"))]
pub pdg_rct_bal: Vec<BalanceFormat6Choice>,
#[yaserde(rename = "OutForRegnBal")]
#[cfg_attr(feature = "serde", serde(rename = "OutForRegnBal"))]
pub out_for_regn_bal: BalanceFormat5Choice,
#[yaserde(rename = "SttlmPosBal")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmPosBal"))]
pub sttlm_pos_bal: Vec<BalanceFormat6Choice>,
#[yaserde(rename = "StrtPosBal")]
#[cfg_attr(feature = "serde", serde(rename = "StrtPosBal"))]
pub strt_pos_bal: BalanceFormat5Choice,
#[yaserde(rename = "TradDtPosBal")]
#[cfg_attr(feature = "serde", serde(rename = "TradDtPosBal"))]
pub trad_dt_pos_bal: BalanceFormat5Choice,
#[yaserde(rename = "InTrnsShipmntBal")]
#[cfg_attr(feature = "serde", serde(rename = "InTrnsShipmntBal"))]
pub in_trns_shipmnt_bal: BalanceFormat5Choice,
#[yaserde(rename = "RegdBal")]
#[cfg_attr(feature = "serde", serde(rename = "RegdBal"))]
pub regd_bal: BalanceFormat5Choice,
#[yaserde(rename = "OblgtdBal")]
#[cfg_attr(feature = "serde", serde(rename = "OblgtdBal"))]
pub oblgtd_bal: BalanceFormat5Choice,
#[yaserde(rename = "UinstdBal")]
#[cfg_attr(feature = "serde", serde(rename = "UinstdBal"))]
pub uinstd_bal: BalanceFormat5Choice,
#[yaserde(rename = "InstdBal")]
#[cfg_attr(feature = "serde", serde(rename = "InstdBal"))]
pub instd_bal: BalanceFormat5Choice,
#[yaserde(rename = "AfctdBal")]
#[cfg_attr(feature = "serde", serde(rename = "AfctdBal"))]
pub afctd_bal: BalanceFormat5Choice,
#[yaserde(rename = "UafctdBal")]
#[cfg_attr(feature = "serde", serde(rename = "UafctdBal"))]
pub uafctd_bal: BalanceFormat5Choice,
}
impl Validate for CorporateActionBalanceDetails29 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionDate62 {
#[yaserde(rename = "PmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "PmtDt"))]
pub pmt_dt: DateFormat43Choice,
#[yaserde(rename = "ValDt")]
#[cfg_attr(feature = "serde", serde(rename = "ValDt"))]
pub val_dt: DateFormat46Choice,
#[yaserde(rename = "FXRateFxgDt")]
#[cfg_attr(feature = "serde", serde(rename = "FXRateFxgDt"))]
pub fx_rate_fxg_dt: DateFormat43Choice,
#[yaserde(rename = "EarlstPmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "EarlstPmtDt"))]
pub earlst_pmt_dt: DateFormat43Choice,
}
impl Validate for CorporateActionDate62 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionDate63 {
#[yaserde(rename = "RcrdDt")]
#[cfg_attr(feature = "serde", serde(rename = "RcrdDt"))]
pub rcrd_dt: DateFormat43Choice,
#[yaserde(rename = "ExDvddDt")]
#[cfg_attr(feature = "serde", serde(rename = "ExDvddDt"))]
pub ex_dvdd_dt: DateFormat43Choice,
#[yaserde(rename = "LtryDt")]
#[cfg_attr(feature = "serde", serde(rename = "LtryDt"))]
pub ltry_dt: DateFormat43Choice,
}
impl Validate for CorporateActionDate63 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionDate78 {
#[yaserde(rename = "EarlyRspnDdln")]
#[cfg_attr(feature = "serde", serde(rename = "EarlyRspnDdln"))]
pub early_rspn_ddln: DateFormat43Choice,
#[yaserde(rename = "CoverXprtnDdln")]
#[cfg_attr(feature = "serde", serde(rename = "CoverXprtnDdln"))]
pub cover_xprtn_ddln: DateFormat43Choice,
#[yaserde(rename = "PrtctDdln")]
#[cfg_attr(feature = "serde", serde(rename = "PrtctDdln"))]
pub prtct_ddln: DateFormat43Choice,
#[yaserde(rename = "MktDdln")]
#[cfg_attr(feature = "serde", serde(rename = "MktDdln"))]
pub mkt_ddln: DateFormat43Choice,
#[yaserde(rename = "RspnDdln")]
#[cfg_attr(feature = "serde", serde(rename = "RspnDdln"))]
pub rspn_ddln: DateFormat44Choice,
#[yaserde(rename = "XpryDt")]
#[cfg_attr(feature = "serde", serde(rename = "XpryDt"))]
pub xpry_dt: DateFormat43Choice,
#[yaserde(rename = "SbcptCostDbtDt")]
#[cfg_attr(feature = "serde", serde(rename = "SbcptCostDbtDt"))]
pub sbcpt_cost_dbt_dt: DateFormat43Choice,
#[yaserde(rename = "DpstryCoverXprtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "DpstryCoverXprtnDt"))]
pub dpstry_cover_xprtn_dt: DateFormat43Choice,
#[yaserde(rename = "StockLndgDdln")]
#[cfg_attr(feature = "serde", serde(rename = "StockLndgDdln"))]
pub stock_lndg_ddln: DateFormat43Choice,
#[yaserde(rename = "BrrwrStockLndgDdln")]
#[cfg_attr(feature = "serde", serde(rename = "BrrwrStockLndgDdln"))]
pub brrwr_stock_lndg_ddln: Vec<BorrowerLendingDeadline5>,
}
impl Validate for CorporateActionDate78 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CorporateActionEventProcessingType1Code {
#[yaserde(rename = "GENL")]
#[cfg_attr(feature = "serde", serde(rename = "GENL"))]
Genl,
#[yaserde(rename = "DISN")]
#[cfg_attr(feature = "serde", serde(rename = "DISN"))]
Disn,
#[yaserde(rename = "REOR")]
#[cfg_attr(feature = "serde", serde(rename = "REOR"))]
Reor,
__Unknown__(String),
}
impl Default for CorporateActionEventProcessingType1Code {
fn default() -> CorporateActionEventProcessingType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionEventProcessingType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionEventProcessingType2Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionEventProcessingType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CorporateActionEventProcessingType2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionEventReference3 {
#[yaserde(rename = "EvtId")]
#[cfg_attr(feature = "serde", serde(rename = "EvtId"))]
pub evt_id: CorporateActionEventReference3Choice,
#[yaserde(rename = "LkgTp")]
#[cfg_attr(feature = "serde", serde(rename = "LkgTp"))]
pub lkg_tp: ProcessingPosition7Choice,
}
impl Validate for CorporateActionEventReference3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionEventReference3Choice {
#[yaserde(rename = "LkdOffclCorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "LkdOffclCorpActnEvtId"))]
pub lkd_offcl_corp_actn_evt_id: Option<Max35Text>,
#[yaserde(rename = "LkdCorpActnId")]
#[cfg_attr(feature = "serde", serde(rename = "LkdCorpActnId"))]
pub lkd_corp_actn_id: Option<Max35Text>,
}
impl Validate for CorporateActionEventReference3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CorporateActionEventStage4Code {
#[yaserde(rename = "FULL")]
#[cfg_attr(feature = "serde", serde(rename = "FULL"))]
Full,
#[yaserde(rename = "PART")]
#[cfg_attr(feature = "serde", serde(rename = "PART"))]
Part,
#[yaserde(rename = "RESC")]
#[cfg_attr(feature = "serde", serde(rename = "RESC"))]
Resc,
__Unknown__(String),
}
impl Default for CorporateActionEventStage4Code {
fn default() -> CorporateActionEventStage4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionEventStage4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionEventStageFormat14Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionEventStage4Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CorporateActionEventStageFormat14Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CorporateActionEventType32Code {
#[yaserde(rename = "ACTV")]
#[cfg_attr(feature = "serde", serde(rename = "ACTV"))]
Actv,
#[yaserde(rename = "ATTI")]
#[cfg_attr(feature = "serde", serde(rename = "ATTI"))]
Atti,
#[yaserde(rename = "BRUP")]
#[cfg_attr(feature = "serde", serde(rename = "BRUP"))]
Brup,
#[yaserde(rename = "DFLT")]
#[cfg_attr(feature = "serde", serde(rename = "DFLT"))]
Dflt,
#[yaserde(rename = "BONU")]
#[cfg_attr(feature = "serde", serde(rename = "BONU"))]
Bonu,
#[yaserde(rename = "EXRI")]
#[cfg_attr(feature = "serde", serde(rename = "EXRI"))]
Exri,
#[yaserde(rename = "CAPD")]
#[cfg_attr(feature = "serde", serde(rename = "CAPD"))]
Capd,
#[yaserde(rename = "CAPG")]
#[cfg_attr(feature = "serde", serde(rename = "CAPG"))]
Capg,
#[yaserde(rename = "CAPI")]
#[cfg_attr(feature = "serde", serde(rename = "CAPI"))]
Capi,
#[yaserde(rename = "DRCA")]
#[cfg_attr(feature = "serde", serde(rename = "DRCA"))]
Drca,
#[yaserde(rename = "DVCA")]
#[cfg_attr(feature = "serde", serde(rename = "DVCA"))]
Dvca,
#[yaserde(rename = "CHAN")]
#[cfg_attr(feature = "serde", serde(rename = "CHAN"))]
Chan,
#[yaserde(rename = "COOP")]
#[cfg_attr(feature = "serde", serde(rename = "COOP"))]
Coop,
#[yaserde(rename = "CLSA")]
#[cfg_attr(feature = "serde", serde(rename = "CLSA"))]
Clsa,
#[yaserde(rename = "CONS")]
#[cfg_attr(feature = "serde", serde(rename = "CONS"))]
Cons,
#[yaserde(rename = "CONV")]
#[cfg_attr(feature = "serde", serde(rename = "CONV"))]
Conv,
#[yaserde(rename = "CREV")]
#[cfg_attr(feature = "serde", serde(rename = "CREV"))]
Crev,
#[yaserde(rename = "DECR")]
#[cfg_attr(feature = "serde", serde(rename = "DECR"))]
Decr,
#[yaserde(rename = "DETI")]
#[cfg_attr(feature = "serde", serde(rename = "DETI"))]
Deti,
#[yaserde(rename = "DSCL")]
#[cfg_attr(feature = "serde", serde(rename = "DSCL"))]
Dscl,
#[yaserde(rename = "DVOP")]
#[cfg_attr(feature = "serde", serde(rename = "DVOP"))]
Dvop,
#[yaserde(rename = "DRIP")]
#[cfg_attr(feature = "serde", serde(rename = "DRIP"))]
Drip,
#[yaserde(rename = "DRAW")]
#[cfg_attr(feature = "serde", serde(rename = "DRAW"))]
Draw,
#[yaserde(rename = "DTCH")]
#[cfg_attr(feature = "serde", serde(rename = "DTCH"))]
Dtch,
#[yaserde(rename = "EXOF")]
#[cfg_attr(feature = "serde", serde(rename = "EXOF"))]
Exof,
#[yaserde(rename = "REDM")]
#[cfg_attr(feature = "serde", serde(rename = "REDM"))]
Redm,
#[yaserde(rename = "MCAL")]
#[cfg_attr(feature = "serde", serde(rename = "MCAL"))]
Mcal,
#[yaserde(rename = "INCR")]
#[cfg_attr(feature = "serde", serde(rename = "INCR"))]
Incr,
#[yaserde(rename = "PPMT")]
#[cfg_attr(feature = "serde", serde(rename = "PPMT"))]
Ppmt,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "RHDI")]
#[cfg_attr(feature = "serde", serde(rename = "RHDI"))]
Rhdi,
#[yaserde(rename = "LIQU")]
#[cfg_attr(feature = "serde", serde(rename = "LIQU"))]
Liqu,
#[yaserde(rename = "EXTM")]
#[cfg_attr(feature = "serde", serde(rename = "EXTM"))]
Extm,
#[yaserde(rename = "MRGR")]
#[cfg_attr(feature = "serde", serde(rename = "MRGR"))]
Mrgr,
#[yaserde(rename = "NOOF")]
#[cfg_attr(feature = "serde", serde(rename = "NOOF"))]
Noof,
#[yaserde(rename = "CERT")]
#[cfg_attr(feature = "serde", serde(rename = "CERT"))]
Cert,
#[yaserde(rename = "ODLT")]
#[cfg_attr(feature = "serde", serde(rename = "ODLT"))]
Odlt,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "PARI")]
#[cfg_attr(feature = "serde", serde(rename = "PARI"))]
Pari,
#[yaserde(rename = "PCAL")]
#[cfg_attr(feature = "serde", serde(rename = "PCAL"))]
Pcal,
#[yaserde(rename = "PRED")]
#[cfg_attr(feature = "serde", serde(rename = "PRED"))]
Pred,
#[yaserde(rename = "PINK")]
#[cfg_attr(feature = "serde", serde(rename = "PINK"))]
Pink,
#[yaserde(rename = "PLAC")]
#[cfg_attr(feature = "serde", serde(rename = "PLAC"))]
Plac,
#[yaserde(rename = "PDEF")]
#[cfg_attr(feature = "serde", serde(rename = "PDEF"))]
Pdef,
#[yaserde(rename = "PRIO")]
#[cfg_attr(feature = "serde", serde(rename = "PRIO"))]
Prio,
#[yaserde(rename = "BPUT")]
#[cfg_attr(feature = "serde", serde(rename = "BPUT"))]
Bput,
#[yaserde(rename = "REDO")]
#[cfg_attr(feature = "serde", serde(rename = "REDO"))]
Redo,
#[yaserde(rename = "REMK")]
#[cfg_attr(feature = "serde", serde(rename = "REMK"))]
Remk,
#[yaserde(rename = "BIDS")]
#[cfg_attr(feature = "serde", serde(rename = "BIDS"))]
Bids,
#[yaserde(rename = "SPLR")]
#[cfg_attr(feature = "serde", serde(rename = "SPLR"))]
Splr,
#[yaserde(rename = "RHTS")]
#[cfg_attr(feature = "serde", serde(rename = "RHTS"))]
Rhts,
#[yaserde(rename = "DVSC")]
#[cfg_attr(feature = "serde", serde(rename = "DVSC"))]
Dvsc,
#[yaserde(rename = "SHPR")]
#[cfg_attr(feature = "serde", serde(rename = "SHPR"))]
Shpr,
#[yaserde(rename = "SMAL")]
#[cfg_attr(feature = "serde", serde(rename = "SMAL"))]
Smal,
#[yaserde(rename = "SOFF")]
#[cfg_attr(feature = "serde", serde(rename = "SOFF"))]
Soff,
#[yaserde(rename = "DVSE")]
#[cfg_attr(feature = "serde", serde(rename = "DVSE"))]
Dvse,
#[yaserde(rename = "SPLF")]
#[cfg_attr(feature = "serde", serde(rename = "SPLF"))]
Splf,
#[yaserde(rename = "TREC")]
#[cfg_attr(feature = "serde", serde(rename = "TREC"))]
Trec,
#[yaserde(rename = "TEND")]
#[cfg_attr(feature = "serde", serde(rename = "TEND"))]
Tend,
#[yaserde(rename = "DLST")]
#[cfg_attr(feature = "serde", serde(rename = "DLST"))]
Dlst,
#[yaserde(rename = "SUSP")]
#[cfg_attr(feature = "serde", serde(rename = "SUSP"))]
Susp,
#[yaserde(rename = "EXWA")]
#[cfg_attr(feature = "serde", serde(rename = "EXWA"))]
Exwa,
#[yaserde(rename = "WTRC")]
#[cfg_attr(feature = "serde", serde(rename = "WTRC"))]
Wtrc,
#[yaserde(rename = "WRTH")]
#[cfg_attr(feature = "serde", serde(rename = "WRTH"))]
Wrth,
#[yaserde(rename = "ACCU")]
#[cfg_attr(feature = "serde", serde(rename = "ACCU"))]
Accu,
#[yaserde(rename = "TNDP")]
#[cfg_attr(feature = "serde", serde(rename = "TNDP"))]
Tndp,
__Unknown__(String),
}
impl Default for CorporateActionEventType32Code {
fn default() -> CorporateActionEventType32Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionEventType32Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionEventType86Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionEventType32Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CorporateActionEventType86Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionGeneralInformation141 {
#[yaserde(rename = "CorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnEvtId"))]
pub corp_actn_evt_id: Max35Text,
#[yaserde(rename = "OffclCorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "OffclCorpActnEvtId"))]
pub offcl_corp_actn_evt_id: Max35Text,
#[yaserde(rename = "ClssActnNb")]
#[cfg_attr(feature = "serde", serde(rename = "ClssActnNb"))]
pub clss_actn_nb: Max35Text,
#[yaserde(rename = "EvtPrcgTp")]
#[cfg_attr(feature = "serde", serde(rename = "EvtPrcgTp"))]
pub evt_prcg_tp: CorporateActionEventProcessingType2Choice,
#[yaserde(rename = "EvtTp")]
#[cfg_attr(feature = "serde", serde(rename = "EvtTp"))]
pub evt_tp: CorporateActionEventType86Choice,
#[yaserde(rename = "MndtryVlntryEvtTp")]
#[cfg_attr(feature = "serde", serde(rename = "MndtryVlntryEvtTp"))]
pub mndtry_vlntry_evt_tp: CorporateActionMandatoryVoluntary3Choice,
#[yaserde(rename = "UndrlygScty")]
#[cfg_attr(feature = "serde", serde(rename = "UndrlygScty"))]
pub undrlyg_scty: FinancialInstrumentAttributes79,
}
impl Validate for CorporateActionGeneralInformation141 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CorporateActionMandatoryVoluntary1Code {
#[yaserde(rename = "MAND")]
#[cfg_attr(feature = "serde", serde(rename = "MAND"))]
Mand,
#[yaserde(rename = "CHOS")]
#[cfg_attr(feature = "serde", serde(rename = "CHOS"))]
Chos,
#[yaserde(rename = "VOLU")]
#[cfg_attr(feature = "serde", serde(rename = "VOLU"))]
Volu,
__Unknown__(String),
}
impl Default for CorporateActionMandatoryVoluntary1Code {
fn default() -> CorporateActionMandatoryVoluntary1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionMandatoryVoluntary1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionMandatoryVoluntary3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionMandatoryVoluntary1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CorporateActionMandatoryVoluntary3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionMovementPreliminaryAdviceV12 {
#[yaserde(rename = "Pgntn")]
#[cfg_attr(feature = "serde", serde(rename = "Pgntn"))]
pub pgntn: Pagination1,
#[yaserde(rename = "MvmntPrlimryAdvcGnlInf")]
#[cfg_attr(feature = "serde", serde(rename = "MvmntPrlimryAdvcGnlInf"))]
pub mvmnt_prlimry_advc_gnl_inf: CorporateActionPreliminaryAdviceType2,
#[yaserde(rename = "PrvsMvmntPrlimryAdvcId")]
#[cfg_attr(feature = "serde", serde(rename = "PrvsMvmntPrlimryAdvcId"))]
pub prvs_mvmnt_prlimry_advc_id: DocumentIdentification31,
#[yaserde(rename = "NtfctnId")]
#[cfg_attr(feature = "serde", serde(rename = "NtfctnId"))]
pub ntfctn_id: DocumentIdentification31,
#[yaserde(rename = "MvmntConfId")]
#[cfg_attr(feature = "serde", serde(rename = "MvmntConfId"))]
pub mvmnt_conf_id: DocumentIdentification31,
#[yaserde(rename = "InstrId")]
#[cfg_attr(feature = "serde", serde(rename = "InstrId"))]
pub instr_id: DocumentIdentification9,
#[yaserde(rename = "OthrDocId")]
#[cfg_attr(feature = "serde", serde(rename = "OthrDocId"))]
pub othr_doc_id: Vec<DocumentIdentification32>,
#[yaserde(rename = "EvtsLkg")]
#[cfg_attr(feature = "serde", serde(rename = "EvtsLkg"))]
pub evts_lkg: Vec<CorporateActionEventReference3>,
#[yaserde(rename = "RvslRsn")]
#[cfg_attr(feature = "serde", serde(rename = "RvslRsn"))]
pub rvsl_rsn: CorporateActionReversalReason3,
#[yaserde(rename = "CorpActnGnlInf")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnGnlInf"))]
pub corp_actn_gnl_inf: CorporateActionGeneralInformation141,
#[yaserde(rename = "AcctDtls")]
#[cfg_attr(feature = "serde", serde(rename = "AcctDtls"))]
pub acct_dtls: AccountIdentification41Choice,
#[yaserde(rename = "CorpActnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnDtls"))]
pub corp_actn_dtls: CorporateAction42,
#[yaserde(rename = "CorpActnMvmntDtls")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnMvmntDtls"))]
pub corp_actn_mvmnt_dtls: Vec<CorporateActionOption178>,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: CorporateActionNarrative28,
#[yaserde(rename = "IssrAgt")]
#[cfg_attr(feature = "serde", serde(rename = "IssrAgt"))]
pub issr_agt: Vec<PartyIdentification129Choice>,
#[yaserde(rename = "PngAgt")]
#[cfg_attr(feature = "serde", serde(rename = "PngAgt"))]
pub png_agt: Vec<PartyIdentification120Choice>,
#[yaserde(rename = "SubPngAgt")]
#[cfg_attr(feature = "serde", serde(rename = "SubPngAgt"))]
pub sub_png_agt: Vec<PartyIdentification120Choice>,
#[yaserde(rename = "Regar")]
#[cfg_attr(feature = "serde", serde(rename = "Regar"))]
pub regar: PartyIdentification120Choice,
#[yaserde(rename = "RsellngAgt")]
#[cfg_attr(feature = "serde", serde(rename = "RsellngAgt"))]
pub rsellng_agt: Vec<PartyIdentification120Choice>,
#[yaserde(rename = "PhysSctiesAgt")]
#[cfg_attr(feature = "serde", serde(rename = "PhysSctiesAgt"))]
pub phys_scties_agt: PartyIdentification120Choice,
#[yaserde(rename = "DrpAgt")]
#[cfg_attr(feature = "serde", serde(rename = "DrpAgt"))]
pub drp_agt: PartyIdentification120Choice,
#[yaserde(rename = "SlctnAgt")]
#[cfg_attr(feature = "serde", serde(rename = "SlctnAgt"))]
pub slctn_agt: Vec<PartyIdentification120Choice>,
#[yaserde(rename = "InfAgt")]
#[cfg_attr(feature = "serde", serde(rename = "InfAgt"))]
pub inf_agt: PartyIdentification120Choice,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: PartyIdentification129Choice,
#[yaserde(rename = "Offerr")]
#[cfg_attr(feature = "serde", serde(rename = "Offerr"))]
pub offerr: Vec<PartyIdentification129Choice>,
#[yaserde(rename = "TrfAgt")]
#[cfg_attr(feature = "serde", serde(rename = "TrfAgt"))]
pub trf_agt: PartyIdentification129Choice,
}
impl Validate for CorporateActionMovementPreliminaryAdviceV12 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionNarrative28 {
#[yaserde(rename = "AddtlTxt")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTxt"))]
pub addtl_txt: UpdatedAdditionalInformation1,
#[yaserde(rename = "NrrtvVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "NrrtvVrsn"))]
pub nrrtv_vrsn: UpdatedAdditionalInformation1,
#[yaserde(rename = "InfConds")]
#[cfg_attr(feature = "serde", serde(rename = "InfConds"))]
pub inf_conds: UpdatedAdditionalInformation1,
#[yaserde(rename = "InfToCmplyWth")]
#[cfg_attr(feature = "serde", serde(rename = "InfToCmplyWth"))]
pub inf_to_cmply_wth: UpdatedAdditionalInformation1,
#[yaserde(rename = "TaxtnConds")]
#[cfg_attr(feature = "serde", serde(rename = "TaxtnConds"))]
pub taxtn_conds: UpdatedAdditionalInformation1,
#[yaserde(rename = "Dsclmr")]
#[cfg_attr(feature = "serde", serde(rename = "Dsclmr"))]
pub dsclmr: UpdatedAdditionalInformation1,
#[yaserde(rename = "PtyCtctNrrtv")]
#[cfg_attr(feature = "serde", serde(rename = "PtyCtctNrrtv"))]
pub pty_ctct_nrrtv: UpdatedAdditionalInformation1,
#[yaserde(rename = "RegnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RegnDtls"))]
pub regn_dtls: UpdatedAdditionalInformation1,
#[yaserde(rename = "BsktOrIndxInf")]
#[cfg_attr(feature = "serde", serde(rename = "BsktOrIndxInf"))]
pub bskt_or_indx_inf: UpdatedAdditionalInformation1,
#[yaserde(rename = "CertfctnBrkdwn")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnBrkdwn"))]
pub certfctn_brkdwn: UpdatedAdditionalInformation1,
}
impl Validate for CorporateActionNarrative28 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionNarrative29 {
#[yaserde(rename = "AddtlTxt")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTxt"))]
pub addtl_txt: UpdatedAdditionalInformation3,
#[yaserde(rename = "NrrtvVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "NrrtvVrsn"))]
pub nrrtv_vrsn: UpdatedAdditionalInformation3,
#[yaserde(rename = "InfConds")]
#[cfg_attr(feature = "serde", serde(rename = "InfConds"))]
pub inf_conds: UpdatedAdditionalInformation1,
#[yaserde(rename = "InfToCmplyWth")]
#[cfg_attr(feature = "serde", serde(rename = "InfToCmplyWth"))]
pub inf_to_cmply_wth: UpdatedAdditionalInformation1,
#[yaserde(rename = "SctyRstrctn")]
#[cfg_attr(feature = "serde", serde(rename = "SctyRstrctn"))]
pub scty_rstrctn: UpdatedAdditionalInformation1,
#[yaserde(rename = "TaxtnConds")]
#[cfg_attr(feature = "serde", serde(rename = "TaxtnConds"))]
pub taxtn_conds: UpdatedAdditionalInformation1,
#[yaserde(rename = "Dsclmr")]
#[cfg_attr(feature = "serde", serde(rename = "Dsclmr"))]
pub dsclmr: UpdatedAdditionalInformation1,
#[yaserde(rename = "CertfctnBrkdwn")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnBrkdwn"))]
pub certfctn_brkdwn: UpdatedAdditionalInformation1,
}
impl Validate for CorporateActionNarrative29 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CorporateActionOption15Code {
#[yaserde(rename = "ABST")]
#[cfg_attr(feature = "serde", serde(rename = "ABST"))]
Abst,
#[yaserde(rename = "BSPL")]
#[cfg_attr(feature = "serde", serde(rename = "BSPL"))]
Bspl,
#[yaserde(rename = "BUYA")]
#[cfg_attr(feature = "serde", serde(rename = "BUYA"))]
Buya,
#[yaserde(rename = "CASE")]
#[cfg_attr(feature = "serde", serde(rename = "CASE"))]
Case,
#[yaserde(rename = "CASH")]
#[cfg_attr(feature = "serde", serde(rename = "CASH"))]
Cash,
#[yaserde(rename = "CEXC")]
#[cfg_attr(feature = "serde", serde(rename = "CEXC"))]
Cexc,
#[yaserde(rename = "CONN")]
#[cfg_attr(feature = "serde", serde(rename = "CONN"))]
Conn,
#[yaserde(rename = "CONY")]
#[cfg_attr(feature = "serde", serde(rename = "CONY"))]
Cony,
#[yaserde(rename = "CTEN")]
#[cfg_attr(feature = "serde", serde(rename = "CTEN"))]
Cten,
#[yaserde(rename = "EXER")]
#[cfg_attr(feature = "serde", serde(rename = "EXER"))]
Exer,
#[yaserde(rename = "LAPS")]
#[cfg_attr(feature = "serde", serde(rename = "LAPS"))]
Laps,
#[yaserde(rename = "MPUT")]
#[cfg_attr(feature = "serde", serde(rename = "MPUT"))]
Mput,
#[yaserde(rename = "NOAC")]
#[cfg_attr(feature = "serde", serde(rename = "NOAC"))]
Noac,
#[yaserde(rename = "NOQU")]
#[cfg_attr(feature = "serde", serde(rename = "NOQU"))]
Noqu,
#[yaserde(rename = "OFFR")]
#[cfg_attr(feature = "serde", serde(rename = "OFFR"))]
Offr,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "OVER")]
#[cfg_attr(feature = "serde", serde(rename = "OVER"))]
Over,
#[yaserde(rename = "QINV")]
#[cfg_attr(feature = "serde", serde(rename = "QINV"))]
Qinv,
#[yaserde(rename = "SECU")]
#[cfg_attr(feature = "serde", serde(rename = "SECU"))]
Secu,
#[yaserde(rename = "SLLE")]
#[cfg_attr(feature = "serde", serde(rename = "SLLE"))]
Slle,
#[yaserde(rename = "PRUN")]
#[cfg_attr(feature = "serde", serde(rename = "PRUN"))]
Prun,
#[yaserde(rename = "BOBD")]
#[cfg_attr(feature = "serde", serde(rename = "BOBD"))]
Bobd,
__Unknown__(String),
}
impl Default for CorporateActionOption15Code {
fn default() -> CorporateActionOption15Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionOption15Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionOption178 {
#[yaserde(rename = "OptnNb")]
#[cfg_attr(feature = "serde", serde(rename = "OptnNb"))]
pub optn_nb: Exact3NumericText,
#[yaserde(rename = "OptnTp")]
#[cfg_attr(feature = "serde", serde(rename = "OptnTp"))]
pub optn_tp: CorporateActionOption37Choice,
#[yaserde(rename = "FrctnDspstn")]
#[cfg_attr(feature = "serde", serde(rename = "FrctnDspstn"))]
pub frctn_dspstn: FractionDispositionType26Choice,
#[yaserde(rename = "OfferTp")]
#[cfg_attr(feature = "serde", serde(rename = "OfferTp"))]
pub offer_tp: Vec<OfferTypeFormat10Choice>,
#[yaserde(rename = "OptnFeatrs")]
#[cfg_attr(feature = "serde", serde(rename = "OptnFeatrs"))]
pub optn_featrs: Vec<OptionFeaturesFormat24Choice>,
#[yaserde(rename = "IntrmdtSctiesDstrbtnTp")]
#[cfg_attr(feature = "serde", serde(rename = "IntrmdtSctiesDstrbtnTp"))]
pub intrmdt_scties_dstrbtn_tp: IntermediateSecuritiesDistributionTypeFormat15Choice,
#[yaserde(rename = "OptnAvlbtySts")]
#[cfg_attr(feature = "serde", serde(rename = "OptnAvlbtySts"))]
pub optn_avlbty_sts: OptionAvailabilityStatus3Choice,
#[yaserde(rename = "CertfctnBrkdwnTp")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnBrkdwnTp"))]
pub certfctn_brkdwn_tp: Vec<BeneficiaryCertificationType9Choice>,
#[yaserde(rename = "NonDmclCtry")]
#[cfg_attr(feature = "serde", serde(rename = "NonDmclCtry"))]
pub non_dmcl_ctry: Vec<CountryCode>,
#[yaserde(rename = "VldDmclCtry")]
#[cfg_attr(feature = "serde", serde(rename = "VldDmclCtry"))]
pub vld_dmcl_ctry: Vec<CountryCode>,
#[yaserde(rename = "CcyOptn")]
#[cfg_attr(feature = "serde", serde(rename = "CcyOptn"))]
pub ccy_optn: ActiveCurrencyCode,
#[yaserde(rename = "DfltPrcgOrStgInstr")]
#[cfg_attr(feature = "serde", serde(rename = "DfltPrcgOrStgInstr"))]
pub dflt_prcg_or_stg_instr: DefaultProcessingOrStandingInstruction1Choice,
#[yaserde(rename = "ChrgsApldInd")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsApldInd"))]
pub chrgs_apld_ind: YesNoIndicator,
#[yaserde(rename = "CertfctnBrkdwnInd")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnBrkdwnInd"))]
pub certfctn_brkdwn_ind: YesNoIndicator,
#[yaserde(rename = "WdrwlAllwdInd")]
#[cfg_attr(feature = "serde", serde(rename = "WdrwlAllwdInd"))]
pub wdrwl_allwd_ind: YesNoIndicator,
#[yaserde(rename = "ChngAllwdInd")]
#[cfg_attr(feature = "serde", serde(rename = "ChngAllwdInd"))]
pub chng_allwd_ind: YesNoIndicator,
#[yaserde(rename = "ApldOptnInd")]
#[cfg_attr(feature = "serde", serde(rename = "ApldOptnInd"))]
pub apld_optn_ind: YesNoIndicator,
#[yaserde(rename = "SctyId")]
#[cfg_attr(feature = "serde", serde(rename = "SctyId"))]
pub scty_id: SecurityIdentification19,
#[yaserde(rename = "DtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DtDtls"))]
pub dt_dtls: CorporateActionDate78,
#[yaserde(rename = "PrdDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PrdDtls"))]
pub prd_dtls: CorporateActionPeriod12,
#[yaserde(rename = "RateAndAmtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RateAndAmtDtls"))]
pub rate_and_amt_dtls: CorporateActionRate106,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: CorporateActionPrice68,
#[yaserde(rename = "SctiesQty")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesQty"))]
pub scties_qty: SecuritiesOption51,
#[yaserde(rename = "SctiesMvmntDtls")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesMvmntDtls"))]
pub scties_mvmnt_dtls: Vec<SecuritiesOption71>,
#[yaserde(rename = "CshMvmntDtls")]
#[cfg_attr(feature = "serde", serde(rename = "CshMvmntDtls"))]
pub csh_mvmnt_dtls: Vec<CashOption72>,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: CorporateActionNarrative29,
}
impl Validate for CorporateActionOption178 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionOption37Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionOption15Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CorporateActionOption37Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionPeriod12 {
#[yaserde(rename = "PricClctnPrd")]
#[cfg_attr(feature = "serde", serde(rename = "PricClctnPrd"))]
pub pric_clctn_prd: Period6Choice,
#[yaserde(rename = "ParllTradgPrd")]
#[cfg_attr(feature = "serde", serde(rename = "ParllTradgPrd"))]
pub parll_tradg_prd: Period6Choice,
#[yaserde(rename = "ActnPrd")]
#[cfg_attr(feature = "serde", serde(rename = "ActnPrd"))]
pub actn_prd: Period6Choice,
#[yaserde(rename = "RvcbltyPrd")]
#[cfg_attr(feature = "serde", serde(rename = "RvcbltyPrd"))]
pub rvcblty_prd: Period6Choice,
#[yaserde(rename = "PrvlgSspnsnPrd")]
#[cfg_attr(feature = "serde", serde(rename = "PrvlgSspnsnPrd"))]
pub prvlg_sspnsn_prd: Period6Choice,
#[yaserde(rename = "AcctSvcrRvcbltyPrd")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrRvcbltyPrd"))]
pub acct_svcr_rvcblty_prd: Period6Choice,
#[yaserde(rename = "DpstrySspnsnPrdForWdrwl")]
#[cfg_attr(feature = "serde", serde(rename = "DpstrySspnsnPrdForWdrwl"))]
pub dpstry_sspnsn_prd_for_wdrwl: Period6Choice,
}
impl Validate for CorporateActionPeriod12 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CorporateActionPreliminaryAdviceType1Code {
#[yaserde(rename = "NEWM")]
#[cfg_attr(feature = "serde", serde(rename = "NEWM"))]
Newm,
#[yaserde(rename = "REPL")]
#[cfg_attr(feature = "serde", serde(rename = "REPL"))]
Repl,
__Unknown__(String),
}
impl Default for CorporateActionPreliminaryAdviceType1Code {
fn default() -> CorporateActionPreliminaryAdviceType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionPreliminaryAdviceType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionPreliminaryAdviceType2 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: CorporateActionPreliminaryAdviceType1Code,
#[yaserde(rename = "ElgbltyInd")]
#[cfg_attr(feature = "serde", serde(rename = "ElgbltyInd"))]
pub elgblty_ind: YesNoIndicator,
}
impl Validate for CorporateActionPreliminaryAdviceType2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionPrice56 {
#[yaserde(rename = "IndctvOrMktPric")]
#[cfg_attr(feature = "serde", serde(rename = "IndctvOrMktPric"))]
pub indctv_or_mkt_pric: IndicativeOrMarketPrice7Choice,
#[yaserde(rename = "CshInLieuOfShrPric")]
#[cfg_attr(feature = "serde", serde(rename = "CshInLieuOfShrPric"))]
pub csh_in_lieu_of_shr_pric: PriceFormat45Choice,
#[yaserde(rename = "CshValForTax")]
#[cfg_attr(feature = "serde", serde(rename = "CshValForTax"))]
pub csh_val_for_tax: PriceFormat46Choice,
#[yaserde(rename = "GncCshPricPdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricPdPerPdct"))]
pub gnc_csh_pric_pd_per_pdct: PriceFormat44Choice,
#[yaserde(rename = "GncCshPricRcvdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricRcvdPerPdct"))]
pub gnc_csh_pric_rcvd_per_pdct: PriceFormat47Choice,
}
impl Validate for CorporateActionPrice56 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionPrice68 {
#[yaserde(rename = "CshInLieuOfShrPric")]
#[cfg_attr(feature = "serde", serde(rename = "CshInLieuOfShrPric"))]
pub csh_in_lieu_of_shr_pric: PriceFormat45Choice,
#[yaserde(rename = "OverSbcptDpstPric")]
#[cfg_attr(feature = "serde", serde(rename = "OverSbcptDpstPric"))]
pub over_sbcpt_dpst_pric: PriceFormat45Choice,
#[yaserde(rename = "MaxCshToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MaxCshToInst"))]
pub max_csh_to_inst: PriceFormat61Choice,
#[yaserde(rename = "MinCshToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinCshToInst"))]
pub min_csh_to_inst: PriceFormat61Choice,
#[yaserde(rename = "MinMltplCshToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinMltplCshToInst"))]
pub min_mltpl_csh_to_inst: PriceFormat61Choice,
}
impl Validate for CorporateActionPrice68 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionQuantity9 {
#[yaserde(rename = "BaseDnmtn")]
#[cfg_attr(feature = "serde", serde(rename = "BaseDnmtn"))]
pub base_dnmtn: FinancialInstrumentQuantity20Choice,
#[yaserde(rename = "IncrmtlDnmtn")]
#[cfg_attr(feature = "serde", serde(rename = "IncrmtlDnmtn"))]
pub incrmtl_dnmtn: FinancialInstrumentQuantity20Choice,
}
impl Validate for CorporateActionQuantity9 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionRate106 {
#[yaserde(rename = "AddtlTax")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTax"))]
pub addtl_tax: RateAndAmountFormat37Choice,
#[yaserde(rename = "GrssDvddRate")]
#[cfg_attr(feature = "serde", serde(rename = "GrssDvddRate"))]
pub grss_dvdd_rate: Vec<GrossDividendRateFormat36Choice>,
#[yaserde(rename = "NetDvddRate")]
#[cfg_attr(feature = "serde", serde(rename = "NetDvddRate"))]
pub net_dvdd_rate: Vec<NetDividendRateFormat38Choice>,
#[yaserde(rename = "IntrstRateUsdForPmt")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstRateUsdForPmt"))]
pub intrst_rate_usd_for_pmt: Vec<InterestRateUsedForPaymentFormat8Choice>,
#[yaserde(rename = "MaxAllwdOvrsbcptRate")]
#[cfg_attr(feature = "serde", serde(rename = "MaxAllwdOvrsbcptRate"))]
pub max_allwd_ovrsbcpt_rate: RateFormat3Choice,
#[yaserde(rename = "PrratnRate")]
#[cfg_attr(feature = "serde", serde(rename = "PrratnRate"))]
pub prratn_rate: RateFormat3Choice,
#[yaserde(rename = "WhldgTaxRate")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxRate"))]
pub whldg_tax_rate: Vec<RateAndAmountFormat41Choice>,
#[yaserde(rename = "ScndLvlTax")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTax"))]
pub scnd_lvl_tax: Vec<RateAndAmountFormat41Choice>,
#[yaserde(rename = "TaxblIncmPerDvddShr")]
#[cfg_attr(feature = "serde", serde(rename = "TaxblIncmPerDvddShr"))]
pub taxbl_incm_per_dvdd_shr: Vec<RateTypeAndAmountAndStatus26>,
#[yaserde(rename = "TaxOnIncm")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnIncm"))]
pub tax_on_incm: RateAndAmountFormat37Choice,
}
impl Validate for CorporateActionRate106 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionRate89 {
#[yaserde(rename = "AddtlQtyForSbcbdRsltntScties")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlQtyForSbcbdRsltntScties"))]
pub addtl_qty_for_sbcbd_rsltnt_scties: RatioFormat17Choice,
#[yaserde(rename = "AddtlQtyForExstgScties")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlQtyForExstgScties"))]
pub addtl_qty_for_exstg_scties: RatioFormat17Choice,
#[yaserde(rename = "NewToOd")]
#[cfg_attr(feature = "serde", serde(rename = "NewToOd"))]
pub new_to_od: RatioFormat18Choice,
#[yaserde(rename = "TrfrmatnRate")]
#[cfg_attr(feature = "serde", serde(rename = "TrfrmatnRate"))]
pub trfrmatn_rate: PercentageRate,
#[yaserde(rename = "ChrgsFees")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsFees"))]
pub chrgs_fees: RateAndAmountFormat37Choice,
#[yaserde(rename = "FsclStmp")]
#[cfg_attr(feature = "serde", serde(rename = "FsclStmp"))]
pub fscl_stmp: RateFormat3Choice,
#[yaserde(rename = "AplblRate")]
#[cfg_attr(feature = "serde", serde(rename = "AplblRate"))]
pub aplbl_rate: RateFormat3Choice,
#[yaserde(rename = "TaxCdtRate")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCdtRate"))]
pub tax_cdt_rate: RateFormat20Choice,
#[yaserde(rename = "FinTxTaxRate")]
#[cfg_attr(feature = "serde", serde(rename = "FinTxTaxRate"))]
pub fin_tx_tax_rate: RateFormat3Choice,
}
impl Validate for CorporateActionRate89 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CorporateActionReversalReason1Code {
#[yaserde(rename = "DCBD")]
#[cfg_attr(feature = "serde", serde(rename = "DCBD"))]
Dcbd,
#[yaserde(rename = "IVAD")]
#[cfg_attr(feature = "serde", serde(rename = "IVAD"))]
Ivad,
#[yaserde(rename = "IRED")]
#[cfg_attr(feature = "serde", serde(rename = "IRED"))]
Ired,
#[yaserde(rename = "IPRI")]
#[cfg_attr(feature = "serde", serde(rename = "IPRI"))]
Ipri,
#[yaserde(rename = "UPAY")]
#[cfg_attr(feature = "serde", serde(rename = "UPAY"))]
Upay,
#[yaserde(rename = "IETR")]
#[cfg_attr(feature = "serde", serde(rename = "IETR"))]
Ietr,
#[yaserde(rename = "FNRC")]
#[cfg_attr(feature = "serde", serde(rename = "FNRC"))]
Fnrc,
#[yaserde(rename = "POCS")]
#[cfg_attr(feature = "serde", serde(rename = "POCS"))]
Pocs,
#[yaserde(rename = "IPCU")]
#[cfg_attr(feature = "serde", serde(rename = "IPCU"))]
Ipcu,
__Unknown__(String),
}
impl Default for CorporateActionReversalReason1Code {
fn default() -> CorporateActionReversalReason1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionReversalReason1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionReversalReason3 {
#[yaserde(rename = "Rsn")]
#[cfg_attr(feature = "serde", serde(rename = "Rsn"))]
pub rsn: CorporateActionReversalReason3Choice,
#[yaserde(rename = "AddtlRsnInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlRsnInf"))]
pub addtl_rsn_inf: Max256Text,
}
impl Validate for CorporateActionReversalReason3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct CorporateActionReversalReason3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionReversalReason1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CorporateActionReversalReason3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct CountryCode (pub String);
crate::simple_type!(CountryCode);
impl Validate for CountryCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum CreditDebitCode {
#[yaserde(rename = "CRDT")]
#[cfg_attr(feature = "serde", serde(rename = "CRDT"))]
Crdt,
#[yaserde(rename = "DBIT")]
#[cfg_attr(feature = "serde", serde(rename = "DBIT"))]
Dbit,
__Unknown__(String),
}
impl Default for CreditDebitCode {
fn default() -> CreditDebitCode {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CreditDebitCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateAndDateTime2Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<Isodate>,
#[yaserde(rename = "DtTm")]
#[cfg_attr(feature = "serde", serde(rename = "DtTm"))]
pub dt_tm: Option<IsodateTime>,
}
impl Validate for DateAndDateTime2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateCode19Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DateType8Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for DateCode19Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateCode20Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DateType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for DateCode20Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateCode21Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DateType7Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for DateCode21Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateCodeAndTimeFormat3 {
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: DateCode21Choice,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
}
impl Validate for DateCodeAndTimeFormat3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateFormat43Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<DateAndDateTime2Choice>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<DateCode19Choice>,
}
impl Validate for DateFormat43Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateFormat44Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<DateAndDateTime2Choice>,
#[yaserde(rename = "DtCdAndTm")]
#[cfg_attr(feature = "serde", serde(rename = "DtCdAndTm"))]
pub dt_cd_and_tm: Option<DateCodeAndTimeFormat3>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<DateCode19Choice>,
}
impl Validate for DateFormat44Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateFormat45Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<DateAndDateTime2Choice>,
#[yaserde(rename = "NotSpcfdDt")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdDt"))]
pub not_spcfd_dt: Option<DateType8Code>,
}
impl Validate for DateFormat45Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DateFormat46Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<DateAndDateTime2Choice>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<DateCode20Choice>,
}
impl Validate for DateFormat46Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum DateType1Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
__Unknown__(String),
}
impl Default for DateType1Code {
fn default() -> DateType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DateType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum DateType7Code {
#[yaserde(rename = "ONGO")]
#[cfg_attr(feature = "serde", serde(rename = "ONGO"))]
Ongo,
__Unknown__(String),
}
impl Default for DateType7Code {
fn default() -> DateType7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DateType7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum DateType8Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
#[yaserde(rename = "ONGO")]
#[cfg_attr(feature = "serde", serde(rename = "ONGO"))]
Ongo,
__Unknown__(String),
}
impl Default for DateType8Code {
fn default() -> DateType8Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DateType8Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct DecimalNumber (pub String);
crate::simple_type!(DecimalNumber);
impl Validate for DecimalNumber {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DeemedRateType1Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DeemedRateType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for DeemedRateType1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum DeemedRateType1Code {
#[yaserde(rename = "DEDI")]
#[cfg_attr(feature = "serde", serde(rename = "DEDI"))]
Dedi,
#[yaserde(rename = "DEFP")]
#[cfg_attr(feature = "serde", serde(rename = "DEFP"))]
Defp,
#[yaserde(rename = "DEIT")]
#[cfg_attr(feature = "serde", serde(rename = "DEIT"))]
Deit,
#[yaserde(rename = "DERY")]
#[cfg_attr(feature = "serde", serde(rename = "DERY"))]
Dery,
__Unknown__(String),
}
impl Default for DeemedRateType1Code {
fn default() -> DeemedRateType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DeemedRateType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DefaultProcessingOrStandingInstruction1Choice {
#[yaserde(rename = "DfltOptnInd")]
#[cfg_attr(feature = "serde", serde(rename = "DfltOptnInd"))]
pub dflt_optn_ind: Option<YesNoIndicator>,
#[yaserde(rename = "StgInstrInd")]
#[cfg_attr(feature = "serde", serde(rename = "StgInstrInd"))]
pub stg_instr_ind: Option<YesNoIndicator>,
}
impl Validate for DefaultProcessingOrStandingInstruction1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum DividendRateType1Code {
#[yaserde(rename = "TXBL")]
#[cfg_attr(feature = "serde", serde(rename = "TXBL"))]
Txbl,
__Unknown__(String),
}
impl Default for DividendRateType1Code {
fn default() -> DividendRateType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DividendRateType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Document {
#[yaserde(rename = "CorpActnMvmntPrlimryAdvc")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnMvmntPrlimryAdvc"))]
pub corp_actn_mvmnt_prlimry_advc: CorporateActionMovementPreliminaryAdviceV12,
}
impl Validate for Document {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DocumentIdentification31 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "LkgTp")]
#[cfg_attr(feature = "serde", serde(rename = "LkgTp"))]
pub lkg_tp: ProcessingPosition7Choice,
}
impl Validate for DocumentIdentification31 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DocumentIdentification32 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: DocumentIdentification3Choice,
#[yaserde(rename = "DocNb")]
#[cfg_attr(feature = "serde", serde(rename = "DocNb"))]
pub doc_nb: DocumentNumber5Choice,
#[yaserde(rename = "LkgTp")]
#[cfg_attr(feature = "serde", serde(rename = "LkgTp"))]
pub lkg_tp: ProcessingPosition7Choice,
}
impl Validate for DocumentIdentification32 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DocumentIdentification3Choice {
#[yaserde(rename = "AcctSvcrDocId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrDocId"))]
pub acct_svcr_doc_id: Option<Max35Text>,
#[yaserde(rename = "AcctOwnrDocId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnrDocId"))]
pub acct_ownr_doc_id: Option<Max35Text>,
}
impl Validate for DocumentIdentification3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DocumentIdentification9 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for DocumentIdentification9 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct DocumentNumber5Choice {
#[yaserde(rename = "ShrtNb")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtNb"))]
pub shrt_nb: Option<Exact3NumericText>,
#[yaserde(rename = "LngNb")]
#[cfg_attr(feature = "serde", serde(rename = "LngNb"))]
pub lng_nb: Option<Iso20022MessageIdentificationText>,
#[yaserde(rename = "PrtryNb")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryNb"))]
pub prtry_nb: Option<GenericIdentification36>,
}
impl Validate for DocumentNumber5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact3NumericText (pub String);
crate::simple_type!(Exact3NumericText);
impl Validate for Exact3NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact4AlphaNumericText (pub String);
crate::simple_type!(Exact4AlphaNumericText);
impl Validate for Exact4AlphaNumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ExternalFinancialInstrumentIdentificationType1Code (pub String);
crate::simple_type!(ExternalFinancialInstrumentIdentificationType1Code);
impl Validate for ExternalFinancialInstrumentIdentificationType1Code {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 4 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 4 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct FinancialInstrumentAttributes79 {
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification19,
#[yaserde(rename = "PlcOfListg")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfListg"))]
pub plc_of_listg: MarketIdentification3Choice,
#[yaserde(rename = "DayCntBsis")]
#[cfg_attr(feature = "serde", serde(rename = "DayCntBsis"))]
pub day_cnt_bsis: InterestComputationMethodFormat4Choice,
#[yaserde(rename = "ClssfctnTp")]
#[cfg_attr(feature = "serde", serde(rename = "ClssfctnTp"))]
pub clssfctn_tp: ClassificationType32Choice,
#[yaserde(rename = "OptnStyle")]
#[cfg_attr(feature = "serde", serde(rename = "OptnStyle"))]
pub optn_style: OptionStyle8Choice,
#[yaserde(rename = "DnmtnCcy")]
#[cfg_attr(feature = "serde", serde(rename = "DnmtnCcy"))]
pub dnmtn_ccy: ActiveOrHistoricCurrencyCode,
#[yaserde(rename = "NxtCpnDt")]
#[cfg_attr(feature = "serde", serde(rename = "NxtCpnDt"))]
pub nxt_cpn_dt: Isodate,
#[yaserde(rename = "XpryDt")]
#[cfg_attr(feature = "serde", serde(rename = "XpryDt"))]
pub xpry_dt: Isodate,
#[yaserde(rename = "FltgRateFxgDt")]
#[cfg_attr(feature = "serde", serde(rename = "FltgRateFxgDt"))]
pub fltg_rate_fxg_dt: Isodate,
#[yaserde(rename = "MtrtyDt")]
#[cfg_attr(feature = "serde", serde(rename = "MtrtyDt"))]
pub mtrty_dt: Isodate,
#[yaserde(rename = "IsseDt")]
#[cfg_attr(feature = "serde", serde(rename = "IsseDt"))]
pub isse_dt: Isodate,
#[yaserde(rename = "NxtCllblDt")]
#[cfg_attr(feature = "serde", serde(rename = "NxtCllblDt"))]
pub nxt_cllbl_dt: Isodate,
#[yaserde(rename = "PutblDt")]
#[cfg_attr(feature = "serde", serde(rename = "PutblDt"))]
pub putbl_dt: Isodate,
#[yaserde(rename = "DtdDt")]
#[cfg_attr(feature = "serde", serde(rename = "DtdDt"))]
pub dtd_dt: Isodate,
#[yaserde(rename = "ConvsDt")]
#[cfg_attr(feature = "serde", serde(rename = "ConvsDt"))]
pub convs_dt: Isodate,
#[yaserde(rename = "IntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstRate"))]
pub intrst_rate: RateFormat3Choice,
#[yaserde(rename = "NxtIntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "NxtIntrstRate"))]
pub nxt_intrst_rate: RateFormat3Choice,
#[yaserde(rename = "PctgOfDebtClm")]
#[cfg_attr(feature = "serde", serde(rename = "PctgOfDebtClm"))]
pub pctg_of_debt_clm: RateFormat3Choice,
#[yaserde(rename = "PrvsFctr")]
#[cfg_attr(feature = "serde", serde(rename = "PrvsFctr"))]
pub prvs_fctr: RateFormat12Choice,
#[yaserde(rename = "NxtFctr")]
#[cfg_attr(feature = "serde", serde(rename = "NxtFctr"))]
pub nxt_fctr: RateFormat12Choice,
#[yaserde(rename = "WarrtParity")]
#[cfg_attr(feature = "serde", serde(rename = "WarrtParity"))]
pub warrt_parity: QuantityToQuantityRatio1,
#[yaserde(rename = "MinNmnlQty")]
#[cfg_attr(feature = "serde", serde(rename = "MinNmnlQty"))]
pub min_nmnl_qty: FinancialInstrumentQuantity1Choice,
#[yaserde(rename = "CtrctSz")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctSz"))]
pub ctrct_sz: FinancialInstrumentQuantity1Choice,
}
impl Validate for FinancialInstrumentAttributes79 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct FinancialInstrumentAttributes80 {
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification19,
#[yaserde(rename = "PlcOfListg")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfListg"))]
pub plc_of_listg: MarketIdentification3Choice,
#[yaserde(rename = "DayCntBsis")]
#[cfg_attr(feature = "serde", serde(rename = "DayCntBsis"))]
pub day_cnt_bsis: InterestComputationMethodFormat4Choice,
#[yaserde(rename = "ClssfctnTp")]
#[cfg_attr(feature = "serde", serde(rename = "ClssfctnTp"))]
pub clssfctn_tp: ClassificationType32Choice,
#[yaserde(rename = "OptnStyle")]
#[cfg_attr(feature = "serde", serde(rename = "OptnStyle"))]
pub optn_style: OptionStyle8Choice,
#[yaserde(rename = "DnmtnCcy")]
#[cfg_attr(feature = "serde", serde(rename = "DnmtnCcy"))]
pub dnmtn_ccy: ActiveOrHistoricCurrencyCode,
#[yaserde(rename = "NxtCpnDt")]
#[cfg_attr(feature = "serde", serde(rename = "NxtCpnDt"))]
pub nxt_cpn_dt: Isodate,
#[yaserde(rename = "FltgRateFxgDt")]
#[cfg_attr(feature = "serde", serde(rename = "FltgRateFxgDt"))]
pub fltg_rate_fxg_dt: Isodate,
#[yaserde(rename = "MtrtyDt")]
#[cfg_attr(feature = "serde", serde(rename = "MtrtyDt"))]
pub mtrty_dt: Isodate,
#[yaserde(rename = "IsseDt")]
#[cfg_attr(feature = "serde", serde(rename = "IsseDt"))]
pub isse_dt: Isodate,
#[yaserde(rename = "NxtCllblDt")]
#[cfg_attr(feature = "serde", serde(rename = "NxtCllblDt"))]
pub nxt_cllbl_dt: Isodate,
#[yaserde(rename = "PutblDt")]
#[cfg_attr(feature = "serde", serde(rename = "PutblDt"))]
pub putbl_dt: Isodate,
#[yaserde(rename = "DtdDt")]
#[cfg_attr(feature = "serde", serde(rename = "DtdDt"))]
pub dtd_dt: Isodate,
#[yaserde(rename = "ConvsDt")]
#[cfg_attr(feature = "serde", serde(rename = "ConvsDt"))]
pub convs_dt: Isodate,
#[yaserde(rename = "PrvsFctr")]
#[cfg_attr(feature = "serde", serde(rename = "PrvsFctr"))]
pub prvs_fctr: RateFormat12Choice,
#[yaserde(rename = "NxtFctr")]
#[cfg_attr(feature = "serde", serde(rename = "NxtFctr"))]
pub nxt_fctr: RateFormat12Choice,
#[yaserde(rename = "IntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstRate"))]
pub intrst_rate: RateFormat3Choice,
#[yaserde(rename = "NxtIntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "NxtIntrstRate"))]
pub nxt_intrst_rate: RateFormat3Choice,
#[yaserde(rename = "MinNmnlQty")]
#[cfg_attr(feature = "serde", serde(rename = "MinNmnlQty"))]
pub min_nmnl_qty: FinancialInstrumentQuantity1Choice,
#[yaserde(rename = "MinQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinQtyToInst"))]
pub min_qty_to_inst: FinancialInstrumentQuantity1Choice,
#[yaserde(rename = "MinMltplQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinMltplQtyToInst"))]
pub min_mltpl_qty_to_inst: FinancialInstrumentQuantity1Choice,
#[yaserde(rename = "CtrctSz")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctSz"))]
pub ctrct_sz: FinancialInstrumentQuantity1Choice,
#[yaserde(rename = "IssePric")]
#[cfg_attr(feature = "serde", serde(rename = "IssePric"))]
pub isse_pric: PriceFormat45Choice,
}
impl Validate for FinancialInstrumentAttributes80 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct FinancialInstrumentQuantity19Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<DecimalNumber>,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: Option<ImpliedCurrencyAndAmount>,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: Option<ImpliedCurrencyAndAmount>,
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Quantity4Code>,
}
impl Validate for FinancialInstrumentQuantity19Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct FinancialInstrumentQuantity1Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<DecimalNumber>,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: Option<ImpliedCurrencyAndAmount>,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: Option<ImpliedCurrencyAndAmount>,
}
impl Validate for FinancialInstrumentQuantity1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct FinancialInstrumentQuantity20Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<DecimalNumber>,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: Option<ImpliedCurrencyAndAmount>,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: Option<ImpliedCurrencyAndAmount>,
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Quantity5Code>,
}
impl Validate for FinancialInstrumentQuantity20Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct ForeignExchangeTerms24 {
#[yaserde(rename = "UnitCcy")]
#[cfg_attr(feature = "serde", serde(rename = "UnitCcy"))]
pub unit_ccy: ActiveCurrencyCode,
#[yaserde(rename = "QtdCcy")]
#[cfg_attr(feature = "serde", serde(rename = "QtdCcy"))]
pub qtd_ccy: ActiveCurrencyCode,
#[yaserde(rename = "XchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "XchgRate"))]
pub xchg_rate: BaseOneRate,
#[yaserde(rename = "RsltgAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RsltgAmt"))]
pub rsltg_amt: ActiveCurrencyAndAmount,
}
impl Validate for ForeignExchangeTerms24 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct FractionDispositionType26Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<FractionDispositionType8Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for FractionDispositionType26Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum FractionDispositionType8Code {
#[yaserde(rename = "BUYU")]
#[cfg_attr(feature = "serde", serde(rename = "BUYU"))]
Buyu,
#[yaserde(rename = "CINL")]
#[cfg_attr(feature = "serde", serde(rename = "CINL"))]
Cinl,
#[yaserde(rename = "DIST")]
#[cfg_attr(feature = "serde", serde(rename = "DIST"))]
Dist,
#[yaserde(rename = "RDDN")]
#[cfg_attr(feature = "serde", serde(rename = "RDDN"))]
Rddn,
#[yaserde(rename = "STAN")]
#[cfg_attr(feature = "serde", serde(rename = "STAN"))]
Stan,
#[yaserde(rename = "RDUP")]
#[cfg_attr(feature = "serde", serde(rename = "RDUP"))]
Rdup,
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
__Unknown__(String),
}
impl Default for FractionDispositionType8Code {
fn default() -> FractionDispositionType8Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FractionDispositionType8Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct GenericIdentification30 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Exact4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
}
impl Validate for GenericIdentification30 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct GenericIdentification36 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
}
impl Validate for GenericIdentification36 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct GenericIdentification47 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Exact4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max4AlphaNumericText,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max4AlphaNumericText,
}
impl Validate for GenericIdentification47 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct GenericIdentification78 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification30,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for GenericIdentification78 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct GrossDividendRateFormat36Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "AmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "AmtAndRateSts"))]
pub amt_and_rate_sts: Option<AmountAndRateStatus1>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus55>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType13Code>,
}
impl Validate for GrossDividendRateFormat36Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct GrossDividendRateFormat38Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "AmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "AmtAndRateSts"))]
pub amt_and_rate_sts: Option<AmountAndRateStatus1>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus57>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType13Code>,
}
impl Validate for GrossDividendRateFormat38Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum GrossDividendRateType6Code {
#[yaserde(rename = "CAPO")]
#[cfg_attr(feature = "serde", serde(rename = "CAPO"))]
Capo,
#[yaserde(rename = "FLFR")]
#[cfg_attr(feature = "serde", serde(rename = "FLFR"))]
Flfr,
#[yaserde(rename = "INCO")]
#[cfg_attr(feature = "serde", serde(rename = "INCO"))]
Inco,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "LTCG")]
#[cfg_attr(feature = "serde", serde(rename = "LTCG"))]
Ltcg,
#[yaserde(rename = "REES")]
#[cfg_attr(feature = "serde", serde(rename = "REES"))]
Rees,
#[yaserde(rename = "STCG")]
#[cfg_attr(feature = "serde", serde(rename = "STCG"))]
Stcg,
#[yaserde(rename = "SOIC")]
#[cfg_attr(feature = "serde", serde(rename = "SOIC"))]
Soic,
#[yaserde(rename = "TXBL")]
#[cfg_attr(feature = "serde", serde(rename = "TXBL"))]
Txbl,
#[yaserde(rename = "TXDF")]
#[cfg_attr(feature = "serde", serde(rename = "TXDF"))]
Txdf,
#[yaserde(rename = "TXFR")]
#[cfg_attr(feature = "serde", serde(rename = "TXFR"))]
Txfr,
#[yaserde(rename = "UNFR")]
#[cfg_attr(feature = "serde", serde(rename = "UNFR"))]
Unfr,
#[yaserde(rename = "CDFI")]
#[cfg_attr(feature = "serde", serde(rename = "CDFI"))]
Cdfi,
__Unknown__(String),
}
impl Default for GrossDividendRateType6Code {
fn default() -> GrossDividendRateType6Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for GrossDividendRateType6Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum GrossDividendRateType7Code {
#[yaserde(rename = "CAPO")]
#[cfg_attr(feature = "serde", serde(rename = "CAPO"))]
Capo,
#[yaserde(rename = "CDFI")]
#[cfg_attr(feature = "serde", serde(rename = "CDFI"))]
Cdfi,
#[yaserde(rename = "FUPU")]
#[cfg_attr(feature = "serde", serde(rename = "FUPU"))]
Fupu,
#[yaserde(rename = "FLFR")]
#[cfg_attr(feature = "serde", serde(rename = "FLFR"))]
Flfr,
#[yaserde(rename = "INCO")]
#[cfg_attr(feature = "serde", serde(rename = "INCO"))]
Inco,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "LTCG")]
#[cfg_attr(feature = "serde", serde(rename = "LTCG"))]
Ltcg,
#[yaserde(rename = "PAPU")]
#[cfg_attr(feature = "serde", serde(rename = "PAPU"))]
Papu,
#[yaserde(rename = "REES")]
#[cfg_attr(feature = "serde", serde(rename = "REES"))]
Rees,
#[yaserde(rename = "STCG")]
#[cfg_attr(feature = "serde", serde(rename = "STCG"))]
Stcg,
#[yaserde(rename = "SOIC")]
#[cfg_attr(feature = "serde", serde(rename = "SOIC"))]
Soic,
#[yaserde(rename = "TXBL")]
#[cfg_attr(feature = "serde", serde(rename = "TXBL"))]
Txbl,
#[yaserde(rename = "TXDF")]
#[cfg_attr(feature = "serde", serde(rename = "TXDF"))]
Txdf,
#[yaserde(rename = "TXFR")]
#[cfg_attr(feature = "serde", serde(rename = "TXFR"))]
Txfr,
#[yaserde(rename = "UNFR")]
#[cfg_attr(feature = "serde", serde(rename = "UNFR"))]
Unfr,
__Unknown__(String),
}
impl Default for GrossDividendRateType7Code {
fn default() -> GrossDividendRateType7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for GrossDividendRateType7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iban2007Identifier (pub String);
crate::simple_type!(Iban2007Identifier);
impl Validate for Iban2007Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isinoct2015Identifier (pub String);
crate::simple_type!(Isinoct2015Identifier);
impl Validate for Isinoct2015Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iso20022MessageIdentificationText (pub String);
crate::simple_type!(Iso20022MessageIdentificationText);
impl Validate for Iso20022MessageIdentificationText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isodate (pub String);
crate::simple_type!(Isodate);
impl Validate for Isodate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct IsodateTime (pub String);
crate::simple_type!(IsodateTime);
impl Validate for IsodateTime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isotime (pub String);
crate::simple_type!(Isotime);
impl Validate for Isotime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct IdentificationSource3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<ExternalFinancialInstrumentIdentificationType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max35Text>,
}
impl Validate for IdentificationSource3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ImpliedCurrencyAndAmount (pub String);
crate::simple_type!(ImpliedCurrencyAndAmount);
impl Validate for ImpliedCurrencyAndAmount {
fn validate(&self) -> Result<(), String> {
if self.0 < "0".parse::<String>().unwrap() {
return Err(format!("MinInclusive validation error: invalid value of 0! \nExpected: 0 >= 0.\nActual: 0 == {}", self.0));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct IndicativeOrMarketPrice7Choice {
#[yaserde(rename = "IndctvPric")]
#[cfg_attr(feature = "serde", serde(rename = "IndctvPric"))]
pub indctv_pric: Option<PriceFormat45Choice>,
#[yaserde(rename = "MktPric")]
#[cfg_attr(feature = "serde", serde(rename = "MktPric"))]
pub mkt_pric: Option<PriceFormat45Choice>,
}
impl Validate for IndicativeOrMarketPrice7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum InterestComputationMethod2Code {
A001,
A002,
A003,
A004,
A005,
A006,
A007,
A008,
A009,
A010,
A011,
A012,
A013,
A014,
#[yaserde(rename = "NARR")]
#[cfg_attr(feature = "serde", serde(rename = "NARR"))]
Narr,
__Unknown__(String),
}
impl Default for InterestComputationMethod2Code {
fn default() -> InterestComputationMethod2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for InterestComputationMethod2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct InterestComputationMethodFormat4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<InterestComputationMethod2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for InterestComputationMethodFormat4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct InterestRateUsedForPaymentFormat8Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus24>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType13Code>,
}
impl Validate for InterestRateUsedForPaymentFormat8Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct IntermediateSecuritiesDistributionTypeFormat15Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<IntermediateSecurityDistributionType5Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for IntermediateSecuritiesDistributionTypeFormat15Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum IntermediateSecurityDistributionType5Code {
#[yaserde(rename = "BIDS")]
#[cfg_attr(feature = "serde", serde(rename = "BIDS"))]
Bids,
#[yaserde(rename = "DRIP")]
#[cfg_attr(feature = "serde", serde(rename = "DRIP"))]
Drip,
#[yaserde(rename = "DVCA")]
#[cfg_attr(feature = "serde", serde(rename = "DVCA"))]
Dvca,
#[yaserde(rename = "DVOP")]
#[cfg_attr(feature = "serde", serde(rename = "DVOP"))]
Dvop,
#[yaserde(rename = "EXRI")]
#[cfg_attr(feature = "serde", serde(rename = "EXRI"))]
Exri,
#[yaserde(rename = "PRIO")]
#[cfg_attr(feature = "serde", serde(rename = "PRIO"))]
Prio,
#[yaserde(rename = "DVSC")]
#[cfg_attr(feature = "serde", serde(rename = "DVSC"))]
Dvsc,
#[yaserde(rename = "DVSE")]
#[cfg_attr(feature = "serde", serde(rename = "DVSE"))]
Dvse,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "LIQU")]
#[cfg_attr(feature = "serde", serde(rename = "LIQU"))]
Liqu,
#[yaserde(rename = "SOFF")]
#[cfg_attr(feature = "serde", serde(rename = "SOFF"))]
Soff,
#[yaserde(rename = "SPLF")]
#[cfg_attr(feature = "serde", serde(rename = "SPLF"))]
Splf,
#[yaserde(rename = "BONU")]
#[cfg_attr(feature = "serde", serde(rename = "BONU"))]
Bonu,
#[yaserde(rename = "EXOF")]
#[cfg_attr(feature = "serde", serde(rename = "EXOF"))]
Exof,
#[yaserde(rename = "MRGR")]
#[cfg_attr(feature = "serde", serde(rename = "MRGR"))]
Mrgr,
__Unknown__(String),
}
impl Default for IntermediateSecurityDistributionType5Code {
fn default() -> IntermediateSecurityDistributionType5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for IntermediateSecurityDistributionType5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct IssuerOfferorTaxabilityIndicator1Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<IssuerTaxability2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for IssuerOfferorTaxabilityIndicator1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum IssuerTaxability2Code {
#[yaserde(rename = "TXBL")]
#[cfg_attr(feature = "serde", serde(rename = "TXBL"))]
Txbl,
__Unknown__(String),
}
impl Default for IssuerTaxability2Code {
fn default() -> IssuerTaxability2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for IssuerTaxability2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Leiidentifier (pub String);
crate::simple_type!(Leiidentifier);
impl Validate for Leiidentifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum LotteryType1Code {
#[yaserde(rename = "ORIG")]
#[cfg_attr(feature = "serde", serde(rename = "ORIG"))]
Orig,
#[yaserde(rename = "SUPP")]
#[cfg_attr(feature = "serde", serde(rename = "SUPP"))]
Supp,
__Unknown__(String),
}
impl Default for LotteryType1Code {
fn default() -> LotteryType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for LotteryType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct LotteryTypeFormat4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<LotteryType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for LotteryTypeFormat4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Micidentifier (pub String);
crate::simple_type!(Micidentifier);
impl Validate for Micidentifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct MarketIdentification3Choice {
#[yaserde(rename = "MktIdrCd")]
#[cfg_attr(feature = "serde", serde(rename = "MktIdrCd"))]
pub mkt_idr_cd: Option<Micidentifier>,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Option<Max35Text>,
}
impl Validate for MarketIdentification3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max140Text (pub String);
crate::simple_type!(Max140Text);
impl Validate for Max140Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 140 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 140 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max16Text (pub String);
crate::simple_type!(Max16Text);
impl Validate for Max16Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 16 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 16 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max256Text (pub String);
crate::simple_type!(Max256Text);
impl Validate for Max256Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 256 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 256 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max34Text (pub String);
crate::simple_type!(Max34Text);
impl Validate for Max34Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 34 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 34 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max350Text (pub String);
crate::simple_type!(Max350Text);
impl Validate for Max350Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 350 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 350 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max35Text (pub String);
crate::simple_type!(Max35Text);
impl Validate for Max35Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 35 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 35 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max4AlphaNumericText (pub String);
crate::simple_type!(Max4AlphaNumericText);
impl Validate for Max4AlphaNumericText {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 4 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 4 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max5NumericText (pub String);
crate::simple_type!(Max5NumericText);
impl Validate for Max5NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max70Text (pub String);
crate::simple_type!(Max70Text);
impl Validate for Max70Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 70 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 70 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct NameAndAddress5 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max350Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: PostalAddress1,
}
impl Validate for NameAndAddress5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct NetDividendRateFormat38Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "AmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "AmtAndRateSts"))]
pub amt_and_rate_sts: Option<AmountAndRateStatus1>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus56>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for NetDividendRateFormat38Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct NetDividendRateFormat39Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "AmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "AmtAndRateSts"))]
pub amt_and_rate_sts: Option<AmountAndRateStatus1>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus58>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for NetDividendRateFormat39Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum NetDividendRateType6Code {
#[yaserde(rename = "CAPO")]
#[cfg_attr(feature = "serde", serde(rename = "CAPO"))]
Capo,
#[yaserde(rename = "CDFI")]
#[cfg_attr(feature = "serde", serde(rename = "CDFI"))]
Cdfi,
#[yaserde(rename = "FLFR")]
#[cfg_attr(feature = "serde", serde(rename = "FLFR"))]
Flfr,
#[yaserde(rename = "INCO")]
#[cfg_attr(feature = "serde", serde(rename = "INCO"))]
Inco,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "REES")]
#[cfg_attr(feature = "serde", serde(rename = "REES"))]
Rees,
#[yaserde(rename = "SOIC")]
#[cfg_attr(feature = "serde", serde(rename = "SOIC"))]
Soic,
#[yaserde(rename = "TXBL")]
#[cfg_attr(feature = "serde", serde(rename = "TXBL"))]
Txbl,
#[yaserde(rename = "TXDF")]
#[cfg_attr(feature = "serde", serde(rename = "TXDF"))]
Txdf,
#[yaserde(rename = "TXFR")]
#[cfg_attr(feature = "serde", serde(rename = "TXFR"))]
Txfr,
#[yaserde(rename = "UNFR")]
#[cfg_attr(feature = "serde", serde(rename = "UNFR"))]
Unfr,
__Unknown__(String),
}
impl Default for NetDividendRateType6Code {
fn default() -> NetDividendRateType6Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for NetDividendRateType6Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum NetDividendRateType7Code {
#[yaserde(rename = "CAPO")]
#[cfg_attr(feature = "serde", serde(rename = "CAPO"))]
Capo,
#[yaserde(rename = "CDFI")]
#[cfg_attr(feature = "serde", serde(rename = "CDFI"))]
Cdfi,
#[yaserde(rename = "FUPU")]
#[cfg_attr(feature = "serde", serde(rename = "FUPU"))]
Fupu,
#[yaserde(rename = "FLFR")]
#[cfg_attr(feature = "serde", serde(rename = "FLFR"))]
Flfr,
#[yaserde(rename = "INCO")]
#[cfg_attr(feature = "serde", serde(rename = "INCO"))]
Inco,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "SOIC")]
#[cfg_attr(feature = "serde", serde(rename = "SOIC"))]
Soic,
#[yaserde(rename = "TXBL")]
#[cfg_attr(feature = "serde", serde(rename = "TXBL"))]
Txbl,
#[yaserde(rename = "TXDF")]
#[cfg_attr(feature = "serde", serde(rename = "TXDF"))]
Txdf,
#[yaserde(rename = "TXFR")]
#[cfg_attr(feature = "serde", serde(rename = "TXFR"))]
Txfr,
#[yaserde(rename = "UNFR")]
#[cfg_attr(feature = "serde", serde(rename = "UNFR"))]
Unfr,
#[yaserde(rename = "PAPU")]
#[cfg_attr(feature = "serde", serde(rename = "PAPU"))]
Papu,
#[yaserde(rename = "REES")]
#[cfg_attr(feature = "serde", serde(rename = "REES"))]
Rees,
__Unknown__(String),
}
impl Default for NetDividendRateType7Code {
fn default() -> NetDividendRateType7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for NetDividendRateType7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum NewSecuritiesIssuanceType5Code {
#[yaserde(rename = "DEFE")]
#[cfg_attr(feature = "serde", serde(rename = "DEFE"))]
Defe,
#[yaserde(rename = "EXIS")]
#[cfg_attr(feature = "serde", serde(rename = "EXIS"))]
Exis,
#[yaserde(rename = "NEIS")]
#[cfg_attr(feature = "serde", serde(rename = "NEIS"))]
Neis,
#[yaserde(rename = "NDEF")]
#[cfg_attr(feature = "serde", serde(rename = "NDEF"))]
Ndef,
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
#[yaserde(rename = "NREF")]
#[cfg_attr(feature = "serde", serde(rename = "NREF"))]
Nref,
#[yaserde(rename = "REFU")]
#[cfg_attr(feature = "serde", serde(rename = "REFU"))]
Refu,
__Unknown__(String),
}
impl Default for NewSecuritiesIssuanceType5Code {
fn default() -> NewSecuritiesIssuanceType5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for NewSecuritiesIssuanceType5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum NonEligibleProceedsIndicator1Code {
#[yaserde(rename = "NELC")]
#[cfg_attr(feature = "serde", serde(rename = "NELC"))]
Nelc,
#[yaserde(rename = "ACLI")]
#[cfg_attr(feature = "serde", serde(rename = "ACLI"))]
Acli,
#[yaserde(rename = "ONEL")]
#[cfg_attr(feature = "serde", serde(rename = "ONEL"))]
Onel,
__Unknown__(String),
}
impl Default for NonEligibleProceedsIndicator1Code {
fn default() -> NonEligibleProceedsIndicator1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for NonEligibleProceedsIndicator1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct NonEligibleProceedsIndicator3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<NonEligibleProceedsIndicator1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for NonEligibleProceedsIndicator3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum OfferType3Code {
#[yaserde(rename = "SQUE")]
#[cfg_attr(feature = "serde", serde(rename = "SQUE"))]
Sque,
#[yaserde(rename = "ERUN")]
#[cfg_attr(feature = "serde", serde(rename = "ERUN"))]
Erun,
#[yaserde(rename = "PART")]
#[cfg_attr(feature = "serde", serde(rename = "PART"))]
Part,
#[yaserde(rename = "FCFS")]
#[cfg_attr(feature = "serde", serde(rename = "FCFS"))]
Fcfs,
#[yaserde(rename = "FINL")]
#[cfg_attr(feature = "serde", serde(rename = "FINL"))]
Finl,
#[yaserde(rename = "DISS")]
#[cfg_attr(feature = "serde", serde(rename = "DISS"))]
Diss,
__Unknown__(String),
}
impl Default for OfferType3Code {
fn default() -> OfferType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OfferType3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct OfferTypeFormat10Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OfferType3Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for OfferTypeFormat10Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum OptionAvailabilityStatus1Code {
#[yaserde(rename = "INTV")]
#[cfg_attr(feature = "serde", serde(rename = "INTV"))]
Intv,
#[yaserde(rename = "CANC")]
#[cfg_attr(feature = "serde", serde(rename = "CANC"))]
Canc,
__Unknown__(String),
}
impl Default for OptionAvailabilityStatus1Code {
fn default() -> OptionAvailabilityStatus1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionAvailabilityStatus1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct OptionAvailabilityStatus3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OptionAvailabilityStatus1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for OptionAvailabilityStatus3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum OptionFeatures11Code {
#[yaserde(rename = "ASVO")]
#[cfg_attr(feature = "serde", serde(rename = "ASVO"))]
Asvo,
#[yaserde(rename = "BOIS")]
#[cfg_attr(feature = "serde", serde(rename = "BOIS"))]
Bois,
#[yaserde(rename = "COND")]
#[cfg_attr(feature = "serde", serde(rename = "COND"))]
Cond,
#[yaserde(rename = "MAXC")]
#[cfg_attr(feature = "serde", serde(rename = "MAXC"))]
Maxc,
#[yaserde(rename = "MAXS")]
#[cfg_attr(feature = "serde", serde(rename = "MAXS"))]
Maxs,
#[yaserde(rename = "NOSE")]
#[cfg_attr(feature = "serde", serde(rename = "NOSE"))]
Nose,
#[yaserde(rename = "OPLF")]
#[cfg_attr(feature = "serde", serde(rename = "OPLF"))]
Oplf,
#[yaserde(rename = "CAOS")]
#[cfg_attr(feature = "serde", serde(rename = "CAOS"))]
Caos,
#[yaserde(rename = "PINS")]
#[cfg_attr(feature = "serde", serde(rename = "PINS"))]
Pins,
#[yaserde(rename = "PROR")]
#[cfg_attr(feature = "serde", serde(rename = "PROR"))]
Pror,
#[yaserde(rename = "VVPR")]
#[cfg_attr(feature = "serde", serde(rename = "VVPR"))]
Vvpr,
#[yaserde(rename = "QCAS")]
#[cfg_attr(feature = "serde", serde(rename = "QCAS"))]
Qcas,
#[yaserde(rename = "SHAR")]
#[cfg_attr(feature = "serde", serde(rename = "SHAR"))]
Shar,
__Unknown__(String),
}
impl Default for OptionFeatures11Code {
fn default() -> OptionFeatures11Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionFeatures11Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct OptionFeaturesFormat24Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OptionFeatures11Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for OptionFeaturesFormat24Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum OptionStyle2Code {
#[yaserde(rename = "AMER")]
#[cfg_attr(feature = "serde", serde(rename = "AMER"))]
Amer,
#[yaserde(rename = "EURO")]
#[cfg_attr(feature = "serde", serde(rename = "EURO"))]
Euro,
__Unknown__(String),
}
impl Default for OptionStyle2Code {
fn default() -> OptionStyle2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionStyle2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct OptionStyle8Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OptionStyle2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for OptionStyle8Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct OriginalAndCurrentQuantities1 {
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: ImpliedCurrencyAndAmount,
}
impl Validate for OriginalAndCurrentQuantities1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct OriginalAndCurrentQuantities6 {
#[yaserde(rename = "ShrtLngPos")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtLngPos"))]
pub shrt_lng_pos: ShortLong1Code,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: ImpliedCurrencyAndAmount,
}
impl Validate for OriginalAndCurrentQuantities6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct OtherIdentification1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Sfx")]
#[cfg_attr(feature = "serde", serde(rename = "Sfx"))]
pub sfx: Max16Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: IdentificationSource3Choice,
}
impl Validate for OtherIdentification1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Pagination1 {
#[yaserde(rename = "PgNb")]
#[cfg_attr(feature = "serde", serde(rename = "PgNb"))]
pub pg_nb: Max5NumericText,
#[yaserde(rename = "LastPgInd")]
#[cfg_attr(feature = "serde", serde(rename = "LastPgInd"))]
pub last_pg_ind: YesNoIndicator,
}
impl Validate for Pagination1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PartyIdentification120Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "PrtryId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryId"))]
pub prtry_id: Option<GenericIdentification36>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress5>,
}
impl Validate for PartyIdentification120Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PartyIdentification127Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "PrtryId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryId"))]
pub prtry_id: Option<GenericIdentification36>,
}
impl Validate for PartyIdentification127Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PartyIdentification129Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "PrtryId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryId"))]
pub prtry_id: Option<GenericIdentification36>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress5>,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Option<Leiidentifier>,
}
impl Validate for PartyIdentification129Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum Payment1Code {
#[yaserde(rename = "ACTU")]
#[cfg_attr(feature = "serde", serde(rename = "ACTU"))]
Actu,
#[yaserde(rename = "CONT")]
#[cfg_attr(feature = "serde", serde(rename = "CONT"))]
Cont,
__Unknown__(String),
}
impl Default for Payment1Code {
fn default() -> Payment1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Payment1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PercentagePrice1 {
#[yaserde(rename = "PctgPricTp")]
#[cfg_attr(feature = "serde", serde(rename = "PctgPricTp"))]
pub pctg_pric_tp: PriceRateType3Code,
#[yaserde(rename = "PricVal")]
#[cfg_attr(feature = "serde", serde(rename = "PricVal"))]
pub pric_val: PercentageRate,
}
impl Validate for PercentagePrice1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct PercentageRate (pub String);
crate::simple_type!(PercentageRate);
impl Validate for PercentageRate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Period11 {
#[yaserde(rename = "StartDt")]
#[cfg_attr(feature = "serde", serde(rename = "StartDt"))]
pub start_dt: DateFormat45Choice,
#[yaserde(rename = "EndDt")]
#[cfg_attr(feature = "serde", serde(rename = "EndDt"))]
pub end_dt: DateFormat45Choice,
}
impl Validate for Period11 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Period6Choice {
#[yaserde(rename = "Prd")]
#[cfg_attr(feature = "serde", serde(rename = "Prd"))]
pub prd: Option<Period11>,
#[yaserde(rename = "PrdCd")]
#[cfg_attr(feature = "serde", serde(rename = "PrdCd"))]
pub prd_cd: Option<DateType8Code>,
}
impl Validate for Period6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PostalAddress1 {
#[yaserde(rename = "AdrTp")]
#[cfg_attr(feature = "serde", serde(rename = "AdrTp"))]
pub adr_tp: AddressType2Code,
#[yaserde(rename = "AdrLine")]
#[cfg_attr(feature = "serde", serde(rename = "AdrLine"))]
pub adr_line: Vec<Max70Text>,
#[yaserde(rename = "StrtNm")]
#[cfg_attr(feature = "serde", serde(rename = "StrtNm"))]
pub strt_nm: Max70Text,
#[yaserde(rename = "BldgNb")]
#[cfg_attr(feature = "serde", serde(rename = "BldgNb"))]
pub bldg_nb: Max16Text,
#[yaserde(rename = "PstCd")]
#[cfg_attr(feature = "serde", serde(rename = "PstCd"))]
pub pst_cd: Max16Text,
#[yaserde(rename = "TwnNm")]
#[cfg_attr(feature = "serde", serde(rename = "TwnNm"))]
pub twn_nm: Max35Text,
#[yaserde(rename = "CtrySubDvsn")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsn"))]
pub ctry_sub_dvsn: Max35Text,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: CountryCode,
}
impl Validate for PostalAddress1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PriceDetails22 {
#[yaserde(rename = "GncCshPricPdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricPdPerPdct"))]
pub gnc_csh_pric_pd_per_pdct: PriceFormat44Choice,
#[yaserde(rename = "GncCshPricRcvdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricRcvdPerPdct"))]
pub gnc_csh_pric_rcvd_per_pdct: PriceFormat47Choice,
}
impl Validate for PriceDetails22 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PriceFormat44Choice {
#[yaserde(rename = "PctgPric")]
#[cfg_attr(feature = "serde", serde(rename = "PctgPric"))]
pub pctg_pric: Option<PercentagePrice1>,
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice3>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType10Code>,
#[yaserde(rename = "IndxPts")]
#[cfg_attr(feature = "serde", serde(rename = "IndxPts"))]
pub indx_pts: Option<DecimalNumber>,
}
impl Validate for PriceFormat44Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PriceFormat45Choice {
#[yaserde(rename = "PctgPric")]
#[cfg_attr(feature = "serde", serde(rename = "PctgPric"))]
pub pctg_pric: Option<PercentagePrice1>,
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice3>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType10Code>,
}
impl Validate for PriceFormat45Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PriceFormat46Choice {
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice2>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType10Code>,
}
impl Validate for PriceFormat46Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PriceFormat47Choice {
#[yaserde(rename = "PctgPric")]
#[cfg_attr(feature = "serde", serde(rename = "PctgPric"))]
pub pctg_pric: Option<PercentagePrice1>,
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice3>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType8Code>,
#[yaserde(rename = "AmtPricPerFinInstrmQty")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricPerFinInstrmQty"))]
pub amt_pric_per_fin_instrm_qty: Option<AmountPricePerFinancialInstrumentQuantity6>,
#[yaserde(rename = "AmtPricPerAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricPerAmt"))]
pub amt_pric_per_amt: Option<AmountPricePerAmount2>,
#[yaserde(rename = "IndxPts")]
#[cfg_attr(feature = "serde", serde(rename = "IndxPts"))]
pub indx_pts: Option<DecimalNumber>,
}
impl Validate for PriceFormat47Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct PriceFormat61Choice {
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice6>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType10Code>,
}
impl Validate for PriceFormat61Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum PriceRateType3Code {
#[yaserde(rename = "DISC")]
#[cfg_attr(feature = "serde", serde(rename = "DISC"))]
Disc,
#[yaserde(rename = "PREM")]
#[cfg_attr(feature = "serde", serde(rename = "PREM"))]
Prem,
#[yaserde(rename = "PRCT")]
#[cfg_attr(feature = "serde", serde(rename = "PRCT"))]
Prct,
#[yaserde(rename = "YIEL")]
#[cfg_attr(feature = "serde", serde(rename = "YIEL"))]
Yiel,
__Unknown__(String),
}
impl Default for PriceRateType3Code {
fn default() -> PriceRateType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceRateType3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum PriceValueType10Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
__Unknown__(String),
}
impl Default for PriceValueType10Code {
fn default() -> PriceValueType10Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceValueType10Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum PriceValueType8Code {
#[yaserde(rename = "TBSP")]
#[cfg_attr(feature = "serde", serde(rename = "TBSP"))]
Tbsp,
#[yaserde(rename = "UNSP")]
#[cfg_attr(feature = "serde", serde(rename = "UNSP"))]
Unsp,
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
#[yaserde(rename = "NILP")]
#[cfg_attr(feature = "serde", serde(rename = "NILP"))]
Nilp,
__Unknown__(String),
}
impl Default for PriceValueType8Code {
fn default() -> PriceValueType8Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceValueType8Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum ProcessingPosition3Code {
#[yaserde(rename = "AFTE")]
#[cfg_attr(feature = "serde", serde(rename = "AFTE"))]
Afte,
#[yaserde(rename = "WITH")]
#[cfg_attr(feature = "serde", serde(rename = "WITH"))]
With,
#[yaserde(rename = "BEFO")]
#[cfg_attr(feature = "serde", serde(rename = "BEFO"))]
Befo,
#[yaserde(rename = "INFO")]
#[cfg_attr(feature = "serde", serde(rename = "INFO"))]
Info,
__Unknown__(String),
}
impl Default for ProcessingPosition3Code {
fn default() -> ProcessingPosition3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ProcessingPosition3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct ProcessingPosition7Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<ProcessingPosition3Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for ProcessingPosition7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct ProprietaryQuantity7 {
#[yaserde(rename = "ShrtLngPos")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtLngPos"))]
pub shrt_lng_pos: ShortLong1Code,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: DecimalNumber,
#[yaserde(rename = "QtyTp")]
#[cfg_attr(feature = "serde", serde(rename = "QtyTp"))]
pub qty_tp: Exact4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
}
impl Validate for ProprietaryQuantity7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct ProprietaryQuantity8 {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: DecimalNumber,
#[yaserde(rename = "QtyTp")]
#[cfg_attr(feature = "serde", serde(rename = "QtyTp"))]
pub qty_tp: Exact4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
}
impl Validate for ProprietaryQuantity8 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Quantity17Choice {
#[yaserde(rename = "QtyChc")]
#[cfg_attr(feature = "serde", serde(rename = "QtyChc"))]
pub qty_chc: Option<Quantity18Choice>,
#[yaserde(rename = "PrtryQty")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryQty"))]
pub prtry_qty: Option<ProprietaryQuantity7>,
}
impl Validate for Quantity17Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Quantity18Choice {
#[yaserde(rename = "OrgnlAndCurFaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlAndCurFaceAmt"))]
pub orgnl_and_cur_face_amt: Option<OriginalAndCurrentQuantities6>,
#[yaserde(rename = "SgndQty")]
#[cfg_attr(feature = "serde", serde(rename = "SgndQty"))]
pub sgnd_qty: Option<SignedQuantityFormat6>,
}
impl Validate for Quantity18Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Quantity19Choice {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: Option<FinancialInstrumentQuantity1Choice>,
#[yaserde(rename = "PrtryQty")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryQty"))]
pub prtry_qty: Option<ProprietaryQuantity8>,
}
impl Validate for Quantity19Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum Quantity4Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
#[yaserde(rename = "ANYA")]
#[cfg_attr(feature = "serde", serde(rename = "ANYA"))]
Anya,
__Unknown__(String),
}
impl Default for Quantity4Code {
fn default() -> Quantity4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Quantity4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum Quantity5Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
__Unknown__(String),
}
impl Default for Quantity5Code {
fn default() -> Quantity5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Quantity5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Quantity6Choice {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: Option<FinancialInstrumentQuantity1Choice>,
#[yaserde(rename = "OrgnlAndCurFace")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlAndCurFace"))]
pub orgnl_and_cur_face: Option<OriginalAndCurrentQuantities1>,
}
impl Validate for Quantity6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct QuantityToQuantityRatio1 {
#[yaserde(rename = "Qty1")]
#[cfg_attr(feature = "serde", serde(rename = "Qty1"))]
pub qty_1: DecimalNumber,
#[yaserde(rename = "Qty2")]
#[cfg_attr(feature = "serde", serde(rename = "Qty2"))]
pub qty_2: DecimalNumber,
}
impl Validate for QuantityToQuantityRatio1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct Rate36 {
#[yaserde(rename = "AddtlTax")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTax"))]
pub addtl_tax: RateAndAmountFormat37Choice,
#[yaserde(rename = "GrssDvddRate")]
#[cfg_attr(feature = "serde", serde(rename = "GrssDvddRate"))]
pub grss_dvdd_rate: Vec<GrossDividendRateFormat38Choice>,
#[yaserde(rename = "IntrstRateUsdForPmt")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstRateUsdForPmt"))]
pub intrst_rate_usd_for_pmt: Vec<InterestRateUsedForPaymentFormat8Choice>,
#[yaserde(rename = "WhldgTaxRate")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxRate"))]
pub whldg_tax_rate: Vec<RateAndAmountFormat41Choice>,
#[yaserde(rename = "ScndLvlTax")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTax"))]
pub scnd_lvl_tax: Vec<RateAndAmountFormat41Choice>,
#[yaserde(rename = "ChrgsFees")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsFees"))]
pub chrgs_fees: RateAndAmountFormat37Choice,
#[yaserde(rename = "EarlySlctnFeeRate")]
#[cfg_attr(feature = "serde", serde(rename = "EarlySlctnFeeRate"))]
pub early_slctn_fee_rate: SolicitationFeeRateFormat7Choice,
#[yaserde(rename = "FsclStmp")]
#[cfg_attr(feature = "serde", serde(rename = "FsclStmp"))]
pub fscl_stmp: RateFormat3Choice,
#[yaserde(rename = "ThrdPtyIncntivRate")]
#[cfg_attr(feature = "serde", serde(rename = "ThrdPtyIncntivRate"))]
pub thrd_pty_incntiv_rate: RateFormat20Choice,
#[yaserde(rename = "NetDvddRate")]
#[cfg_attr(feature = "serde", serde(rename = "NetDvddRate"))]
pub net_dvdd_rate: Vec<NetDividendRateFormat39Choice>,
#[yaserde(rename = "AplblRate")]
#[cfg_attr(feature = "serde", serde(rename = "AplblRate"))]
pub aplbl_rate: RateFormat3Choice,
#[yaserde(rename = "SlctnFeeRate")]
#[cfg_attr(feature = "serde", serde(rename = "SlctnFeeRate"))]
pub slctn_fee_rate: SolicitationFeeRateFormat7Choice,
#[yaserde(rename = "TaxCdtRate")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCdtRate"))]
pub tax_cdt_rate: RateFormat20Choice,
#[yaserde(rename = "TaxOnIncm")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnIncm"))]
pub tax_on_incm: RateAndAmountFormat37Choice,
#[yaserde(rename = "TaxOnPrfts")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnPrfts"))]
pub tax_on_prfts: RateFormat3Choice,
#[yaserde(rename = "TaxRclmRate")]
#[cfg_attr(feature = "serde", serde(rename = "TaxRclmRate"))]
pub tax_rclm_rate: RateFormat3Choice,
#[yaserde(rename = "EqulstnRate")]
#[cfg_attr(feature = "serde", serde(rename = "EqulstnRate"))]
pub equlstn_rate: RateAndAmountFormat42Choice,
#[yaserde(rename = "DmdRate")]
#[cfg_attr(feature = "serde", serde(rename = "DmdRate"))]
pub dmd_rate: Vec<RateAndAmountFormat51Choice>,
}
impl Validate for Rate36 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateAndAmountFormat37Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
}
impl Validate for RateAndAmountFormat37Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateAndAmountFormat41Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "RateTpAndRate")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndRate"))]
pub rate_tp_and_rate: Option<RateTypeAndPercentageRate8>,
}
impl Validate for RateAndAmountFormat41Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateAndAmountFormat42Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for RateAndAmountFormat42Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateAndAmountFormat51Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus37>,
#[yaserde(rename = "RateTpAndRate")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndRate"))]
pub rate_tp_and_rate: Option<RateTypeAndPercentageRate10>,
}
impl Validate for RateAndAmountFormat51Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateFormat12Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<BaseOne14Rate>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType5Code>,
}
impl Validate for RateFormat12Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateFormat20Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for RateFormat20Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateFormat3Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType5Code>,
}
impl Validate for RateFormat3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum RateStatus1Code {
#[yaserde(rename = "ACTU")]
#[cfg_attr(feature = "serde", serde(rename = "ACTU"))]
Actu,
#[yaserde(rename = "INDI")]
#[cfg_attr(feature = "serde", serde(rename = "INDI"))]
Indi,
__Unknown__(String),
}
impl Default for RateStatus1Code {
fn default() -> RateStatus1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for RateStatus1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateStatus3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<RateStatus1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateStatus3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum RateType13Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
#[yaserde(rename = "NILP")]
#[cfg_attr(feature = "serde", serde(rename = "NILP"))]
Nilp,
__Unknown__(String),
}
impl Default for RateType13Code {
fn default() -> RateType13Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for RateType13Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateType33Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<RateType7Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateType33Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateType36Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DividendRateType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateType36Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateType42Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<WithholdingTaxRateType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateType42Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum RateType5Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
__Unknown__(String),
}
impl Default for RateType5Code {
fn default() -> RateType5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for RateType5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateType76Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<GrossDividendRateType6Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateType76Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateType77Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<NetDividendRateType6Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateType77Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateType78Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<GrossDividendRateType7Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateType78Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateType79Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<NetDividendRateType7Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RateType79Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum RateType7Code {
#[yaserde(rename = "SCHD")]
#[cfg_attr(feature = "serde", serde(rename = "SCHD"))]
Schd,
#[yaserde(rename = "USCD")]
#[cfg_attr(feature = "serde", serde(rename = "USCD"))]
Uscd,
__Unknown__(String),
}
impl Default for RateType7Code {
fn default() -> RateType7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for RateType7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndAmountAndStatus24 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType33Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus3Choice,
}
impl Validate for RateTypeAndAmountAndStatus24 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndAmountAndStatus26 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType36Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus3Choice,
}
impl Validate for RateTypeAndAmountAndStatus26 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndAmountAndStatus37 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: DeemedRateType1Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus3Choice,
}
impl Validate for RateTypeAndAmountAndStatus37 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndAmountAndStatus55 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType76Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus3Choice,
}
impl Validate for RateTypeAndAmountAndStatus55 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndAmountAndStatus56 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType77Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus3Choice,
}
impl Validate for RateTypeAndAmountAndStatus56 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndAmountAndStatus57 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType78Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus3Choice,
}
impl Validate for RateTypeAndAmountAndStatus57 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndAmountAndStatus58 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType79Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus3Choice,
}
impl Validate for RateTypeAndAmountAndStatus58 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndPercentageRate10 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: DeemedRateType1Choice,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: PercentageRate,
}
impl Validate for RateTypeAndPercentageRate10 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RateTypeAndPercentageRate8 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType42Choice,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: PercentageRate,
}
impl Validate for RateTypeAndPercentageRate8 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum RateValueType7Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
__Unknown__(String),
}
impl Default for RateValueType7Code {
fn default() -> RateValueType7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for RateValueType7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RatioFormat17Choice {
#[yaserde(rename = "QtyToQty")]
#[cfg_attr(feature = "serde", serde(rename = "QtyToQty"))]
pub qty_to_qty: Option<QuantityToQuantityRatio1>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
#[yaserde(rename = "AmtToAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AmtToAmt"))]
pub amt_to_amt: Option<AmountToAmountRatio2>,
}
impl Validate for RatioFormat17Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct RatioFormat18Choice {
#[yaserde(rename = "QtyToQty")]
#[cfg_attr(feature = "serde", serde(rename = "QtyToQty"))]
pub qty_to_qty: Option<QuantityToQuantityRatio1>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
#[yaserde(rename = "AmtToAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AmtToAmt"))]
pub amt_to_amt: Option<AmountToAmountRatio2>,
#[yaserde(rename = "AmtToQty")]
#[cfg_attr(feature = "serde", serde(rename = "AmtToQty"))]
pub amt_to_qty: Option<AmountAndQuantityRatio4>,
#[yaserde(rename = "QtyToAmt")]
#[cfg_attr(feature = "serde", serde(rename = "QtyToAmt"))]
pub qty_to_amt: Option<AmountAndQuantityRatio4>,
}
impl Validate for RatioFormat18Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum SafekeepingAccountIdentification1Code {
#[yaserde(rename = "GENR")]
#[cfg_attr(feature = "serde", serde(rename = "GENR"))]
Genr,
__Unknown__(String),
}
impl Default for SafekeepingAccountIdentification1Code {
fn default() -> SafekeepingAccountIdentification1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SafekeepingAccountIdentification1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum SafekeepingPlace1Code {
#[yaserde(rename = "CUST")]
#[cfg_attr(feature = "serde", serde(rename = "CUST"))]
Cust,
#[yaserde(rename = "ICSD")]
#[cfg_attr(feature = "serde", serde(rename = "ICSD"))]
Icsd,
#[yaserde(rename = "NCSD")]
#[cfg_attr(feature = "serde", serde(rename = "NCSD"))]
Ncsd,
#[yaserde(rename = "SHHE")]
#[cfg_attr(feature = "serde", serde(rename = "SHHE"))]
Shhe,
__Unknown__(String),
}
impl Default for SafekeepingPlace1Code {
fn default() -> SafekeepingPlace1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SafekeepingPlace1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum SafekeepingPlace2Code {
#[yaserde(rename = "SHHE")]
#[cfg_attr(feature = "serde", serde(rename = "SHHE"))]
Shhe,
#[yaserde(rename = "ALLP")]
#[cfg_attr(feature = "serde", serde(rename = "ALLP"))]
Allp,
__Unknown__(String),
}
impl Default for SafekeepingPlace2Code {
fn default() -> SafekeepingPlace2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SafekeepingPlace2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum SafekeepingPlace3Code {
#[yaserde(rename = "SHHE")]
#[cfg_attr(feature = "serde", serde(rename = "SHHE"))]
Shhe,
__Unknown__(String),
}
impl Default for SafekeepingPlace3Code {
fn default() -> SafekeepingPlace3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SafekeepingPlace3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SafekeepingPlaceFormat28Choice {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Option<SafekeepingPlaceTypeAndText6>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
#[yaserde(rename = "TpAndId")]
#[cfg_attr(feature = "serde", serde(rename = "TpAndId"))]
pub tp_and_id: Option<SafekeepingPlaceTypeAndIdentification1>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification78>,
}
impl Validate for SafekeepingPlaceFormat28Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SafekeepingPlaceFormat29Choice {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Option<SafekeepingPlaceTypeAndText8>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
#[yaserde(rename = "TpAndId")]
#[cfg_attr(feature = "serde", serde(rename = "TpAndId"))]
pub tp_and_id: Option<SafekeepingPlaceTypeAndIdentification1>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification78>,
}
impl Validate for SafekeepingPlaceFormat29Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SafekeepingPlaceTypeAndIdentification1 {
#[yaserde(rename = "SfkpgPlcTp")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlcTp"))]
pub sfkpg_plc_tp: SafekeepingPlace1Code,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: AnyBICDec2014Identifier,
}
impl Validate for SafekeepingPlaceTypeAndIdentification1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SafekeepingPlaceTypeAndText6 {
#[yaserde(rename = "SfkpgPlcTp")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlcTp"))]
pub sfkpg_plc_tp: SafekeepingPlace2Code,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for SafekeepingPlaceTypeAndText6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SafekeepingPlaceTypeAndText8 {
#[yaserde(rename = "SfkpgPlcTp")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlcTp"))]
pub sfkpg_plc_tp: SafekeepingPlace3Code,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for SafekeepingPlaceTypeAndText8 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SecuritiesOption51 {
#[yaserde(rename = "MaxQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MaxQtyToInst"))]
pub max_qty_to_inst: FinancialInstrumentQuantity19Choice,
#[yaserde(rename = "MinQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinQtyToInst"))]
pub min_qty_to_inst: FinancialInstrumentQuantity19Choice,
#[yaserde(rename = "MinMltplQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinMltplQtyToInst"))]
pub min_mltpl_qty_to_inst: FinancialInstrumentQuantity20Choice,
#[yaserde(rename = "NewBrdLotQty")]
#[cfg_attr(feature = "serde", serde(rename = "NewBrdLotQty"))]
pub new_brd_lot_qty: FinancialInstrumentQuantity20Choice,
#[yaserde(rename = "NewDnmtnQty")]
#[cfg_attr(feature = "serde", serde(rename = "NewDnmtnQty"))]
pub new_dnmtn_qty: FinancialInstrumentQuantity20Choice,
#[yaserde(rename = "FrntEndOddLotQty")]
#[cfg_attr(feature = "serde", serde(rename = "FrntEndOddLotQty"))]
pub frnt_end_odd_lot_qty: FinancialInstrumentQuantity20Choice,
#[yaserde(rename = "BckEndOddLotQty")]
#[cfg_attr(feature = "serde", serde(rename = "BckEndOddLotQty"))]
pub bck_end_odd_lot_qty: FinancialInstrumentQuantity20Choice,
}
impl Validate for SecuritiesOption51 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SecuritiesOption71 {
#[yaserde(rename = "SctyDtls")]
#[cfg_attr(feature = "serde", serde(rename = "SctyDtls"))]
pub scty_dtls: FinancialInstrumentAttributes80,
#[yaserde(rename = "CdtDbtInd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbtInd"))]
pub cdt_dbt_ind: CreditDebitCode,
#[yaserde(rename = "TempFinInstrmInd")]
#[cfg_attr(feature = "serde", serde(rename = "TempFinInstrmInd"))]
pub temp_fin_instrm_ind: TemporaryFinancialInstrumentIndicator3Choice,
#[yaserde(rename = "NonElgblPrcdsInd")]
#[cfg_attr(feature = "serde", serde(rename = "NonElgblPrcdsInd"))]
pub non_elgbl_prcds_ind: NonEligibleProceedsIndicator3Choice,
#[yaserde(rename = "IssrOfferrTaxbltyInd")]
#[cfg_attr(feature = "serde", serde(rename = "IssrOfferrTaxbltyInd"))]
pub issr_offerr_taxblty_ind: IssuerOfferorTaxabilityIndicator1Choice,
#[yaserde(rename = "NewSctiesIssncInd")]
#[cfg_attr(feature = "serde", serde(rename = "NewSctiesIssncInd"))]
pub new_scties_issnc_ind: NewSecuritiesIssuanceType5Code,
#[yaserde(rename = "IncmTp")]
#[cfg_attr(feature = "serde", serde(rename = "IncmTp"))]
pub incm_tp: GenericIdentification30,
#[yaserde(rename = "XmptnTp")]
#[cfg_attr(feature = "serde", serde(rename = "XmptnTp"))]
pub xmptn_tp: Vec<GenericIdentification30>,
#[yaserde(rename = "EntitldQty")]
#[cfg_attr(feature = "serde", serde(rename = "EntitldQty"))]
pub entitld_qty: Quantity6Choice,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafekeepingPlaceFormat29Choice,
#[yaserde(rename = "CtryOfIncmSrc")]
#[cfg_attr(feature = "serde", serde(rename = "CtryOfIncmSrc"))]
pub ctry_of_incm_src: CountryCode,
#[yaserde(rename = "FrctnDspstn")]
#[cfg_attr(feature = "serde", serde(rename = "FrctnDspstn"))]
pub frctn_dspstn: FractionDispositionType26Choice,
#[yaserde(rename = "CcyOptn")]
#[cfg_attr(feature = "serde", serde(rename = "CcyOptn"))]
pub ccy_optn: ActiveCurrencyCode,
#[yaserde(rename = "TradgPrd")]
#[cfg_attr(feature = "serde", serde(rename = "TradgPrd"))]
pub tradg_prd: Period6Choice,
#[yaserde(rename = "DtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DtDtls"))]
pub dt_dtls: SecurityDate16,
#[yaserde(rename = "RateDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RateDtls"))]
pub rate_dtls: CorporateActionRate89,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: CorporateActionPrice56,
}
impl Validate for SecuritiesOption71 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SecurityDate16 {
#[yaserde(rename = "PmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "PmtDt"))]
pub pmt_dt: DateFormat43Choice,
#[yaserde(rename = "AvlblDt")]
#[cfg_attr(feature = "serde", serde(rename = "AvlblDt"))]
pub avlbl_dt: DateFormat43Choice,
#[yaserde(rename = "DvddRnkgDt")]
#[cfg_attr(feature = "serde", serde(rename = "DvddRnkgDt"))]
pub dvdd_rnkg_dt: DateFormat43Choice,
#[yaserde(rename = "EarlstPmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "EarlstPmtDt"))]
pub earlst_pmt_dt: DateFormat43Choice,
#[yaserde(rename = "PrpssDt")]
#[cfg_attr(feature = "serde", serde(rename = "PrpssDt"))]
pub prpss_dt: DateFormat43Choice,
#[yaserde(rename = "LastTradgDt")]
#[cfg_attr(feature = "serde", serde(rename = "LastTradgDt"))]
pub last_tradg_dt: DateFormat43Choice,
}
impl Validate for SecurityDate16 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SecurityIdentification19 {
#[yaserde(rename = "ISIN")]
#[cfg_attr(feature = "serde", serde(rename = "ISIN"))]
pub isin: Isinoct2015Identifier,
#[yaserde(rename = "OthrId")]
#[cfg_attr(feature = "serde", serde(rename = "OthrId"))]
pub othr_id: Vec<OtherIdentification1>,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max140Text,
}
impl Validate for SecurityIdentification19 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum ShortLong1Code {
#[yaserde(rename = "SHOR")]
#[cfg_attr(feature = "serde", serde(rename = "SHOR"))]
Shor,
#[yaserde(rename = "LONG")]
#[cfg_attr(feature = "serde", serde(rename = "LONG"))]
Long,
__Unknown__(String),
}
impl Default for ShortLong1Code {
fn default() -> ShortLong1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ShortLong1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SignedQuantityFormat6 {
#[yaserde(rename = "ShrtLngPos")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtLngPos"))]
pub shrt_lng_pos: ShortLong1Code,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: FinancialInstrumentQuantity1Choice,
}
impl Validate for SignedQuantityFormat6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SignedQuantityFormat7 {
#[yaserde(rename = "ShrtLngPos")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtLngPos"))]
pub shrt_lng_pos: ShortLong1Code,
#[yaserde(rename = "QtyChc")]
#[cfg_attr(feature = "serde", serde(rename = "QtyChc"))]
pub qty_chc: Quantity19Choice,
}
impl Validate for SignedQuantityFormat7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SolicitationFeeRateFormat7Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "AmtToQty")]
#[cfg_attr(feature = "serde", serde(rename = "AmtToQty"))]
pub amt_to_qty: Option<AmountAndQuantityRatio4>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for SolicitationFeeRateFormat7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SupplementaryData1 {
#[yaserde(rename = "PlcAndNm")]
#[cfg_attr(feature = "serde", serde(rename = "PlcAndNm"))]
pub plc_and_nm: Max350Text,
#[yaserde(rename = "Envlp")]
#[cfg_attr(feature = "serde", serde(rename = "Envlp"))]
pub envlp: SupplementaryDataEnvelope1,
}
impl Validate for SupplementaryData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct SupplementaryDataEnvelope1 {}
impl Validate for SupplementaryDataEnvelope1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct TemporaryFinancialInstrumentIndicator3Choice {
#[yaserde(rename = "TempInd")]
#[cfg_attr(feature = "serde", serde(rename = "TempInd"))]
pub temp_ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for TemporaryFinancialInstrumentIndicator3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct TotalEligibleBalanceFormat8 {
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: Quantity17Choice,
#[yaserde(rename = "FullPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "FullPrdUnits"))]
pub full_prd_units: SignedQuantityFormat6,
#[yaserde(rename = "PartWayPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "PartWayPrdUnits"))]
pub part_way_prd_units: SignedQuantityFormat6,
}
impl Validate for TotalEligibleBalanceFormat8 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct UpdatedAdditionalInformation1 {
#[yaserde(rename = "UpdDesc")]
#[cfg_attr(feature = "serde", serde(rename = "UpdDesc"))]
pub upd_desc: Max140Text,
#[yaserde(rename = "UpdDt")]
#[cfg_attr(feature = "serde", serde(rename = "UpdDt"))]
pub upd_dt: Isodate,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: Vec<Max350Text>,
}
impl Validate for UpdatedAdditionalInformation1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub struct UpdatedAdditionalInformation3 {
#[yaserde(rename = "UpdDesc")]
#[cfg_attr(feature = "serde", serde(rename = "UpdDesc"))]
pub upd_desc: Max140Text,
#[yaserde(rename = "UpdDt")]
#[cfg_attr(feature = "serde", serde(rename = "UpdDt"))]
pub upd_dt: Isodate,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: Max350Text,
}
impl Validate for UpdatedAdditionalInformation3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.001.12")]
pub enum WithholdingTaxRateType1Code {
#[yaserde(rename = "BWIT")]
#[cfg_attr(feature = "serde", serde(rename = "BWIT"))]
Bwit,
#[yaserde(rename = "FTCA")]
#[cfg_attr(feature = "serde", serde(rename = "FTCA"))]
Ftca,
#[yaserde(rename = "NRAT")]
#[cfg_attr(feature = "serde", serde(rename = "NRAT"))]
Nrat,
__Unknown__(String),
}
impl Default for WithholdingTaxRateType1Code {
fn default() -> WithholdingTaxRateType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for WithholdingTaxRateType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct YesNoIndicator (pub bool);
crate::simple_type!(YesNoIndicator);
impl Validate for YesNoIndicator {}
impl crate::MxMessage for Document {
const BUSINESS_AREA: crate::BusinessArea = crate::BusinessArea::seev;
const FUNCTIONALITY: &'static str = "035";
const VARIANT: &'static str = "001";
const VERSION: &'static str = "12";
const MESSAGE_NAME: &'static str = "seev.035.001.12";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:seev.035.001.12";
}