#![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.002.16")]
pub struct AccountAndBalance64 {
#[yaserde(rename = "SfkpgAcct")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgAcct"))]
pub sfkpg_acct: RestrictedFINXMax35Text,
#[yaserde(rename = "BlckChainAdrOrWllt")]
#[cfg_attr(feature = "serde", serde(rename = "BlckChainAdrOrWllt"))]
pub blck_chain_adr_or_wllt: RestrictedFINXMax140Text,
#[yaserde(rename = "AcctOwnr")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnr"))]
pub acct_ownr: PartyIdentification136Choice,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafekeepingPlaceFormat52Choice,
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: CorporateActionBalanceDetails46,
}
impl Validate for AccountAndBalance64 {}
#[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.002.16")]
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.002.16")]
pub struct AccountIdentification76Choice {
#[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<AccountAndBalance64>,
}
impl Validate for AccountIdentification76Choice {}
#[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.002.16")]
pub enum AdditionalBusinessProcess10Code {
#[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,
#[yaserde(rename = "INCP")]
#[cfg_attr(feature = "serde", serde(rename = "INCP"))]
Incp,
__Unknown__(String),
}
impl Default for AdditionalBusinessProcess10Code {
fn default() -> AdditionalBusinessProcess10Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AdditionalBusinessProcess10Code {}
#[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.002.16")]
pub struct AdditionalBusinessProcessFormat21Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<AdditionalBusinessProcess10Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for AdditionalBusinessProcessFormat21Choice {}
#[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.002.16")]
pub struct AmountAndQuantityRatio5 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: RestrictedFINDecimalNumber,
}
impl Validate for AmountAndQuantityRatio5 {}
#[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.002.16")]
pub struct AmountAndRateStatus2 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus1Code,
}
impl Validate for AmountAndRateStatus2 {}
#[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.002.16")]
pub struct AmountPrice4 {
#[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: RestrictedFINActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPrice4 {}
#[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.002.16")]
pub struct AmountPrice5 {
#[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: RestrictedFINActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPrice5 {}
#[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.002.16")]
pub struct AmountPrice7 {
#[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: RestrictedFINActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPrice7 {}
#[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.002.16")]
pub struct AmountPricePerAmount3 {
#[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: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountPricePerAmount3 {}
#[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.002.16")]
pub struct AmountPricePerFinancialInstrumentQuantity11 {
#[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: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "FinInstrmQty")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmQty"))]
pub fin_instrm_qty: FinancialInstrumentQuantity36Choice,
}
impl Validate for AmountPricePerFinancialInstrumentQuantity11 {}
#[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.002.16")]
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.002.16")]
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.002.16")]
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.002.16")]
pub struct AmountToAmountRatio3 {
#[yaserde(rename = "Amt1")]
#[cfg_attr(feature = "serde", serde(rename = "Amt1"))]
pub amt_1: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "Amt2")]
#[cfg_attr(feature = "serde", serde(rename = "Amt2"))]
pub amt_2: RestrictedFINActiveCurrencyAnd13DecimalAmount,
}
impl Validate for AmountToAmountRatio3 {}
#[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.002.16")]
pub struct BalanceFormat14Choice {
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: Option<SignedQuantityFormat12>,
#[yaserde(rename = "ElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "ElgblBal"))]
pub elgbl_bal: Option<SignedQuantityFormat13>,
#[yaserde(rename = "NotElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "NotElgblBal"))]
pub not_elgbl_bal: Option<SignedQuantityFormat13>,
}
impl Validate for BalanceFormat14Choice {}
#[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.002.16")]
pub struct BalanceFormat16Choice {
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: Option<SignedQuantityFormat12>,
#[yaserde(rename = "ElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "ElgblBal"))]
pub elgbl_bal: Option<SignedQuantityFormat13>,
#[yaserde(rename = "NotElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "NotElgblBal"))]
pub not_elgbl_bal: Option<SignedQuantityFormat13>,
#[yaserde(rename = "FullPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "FullPrdUnits"))]
pub full_prd_units: Option<SignedQuantityFormat13>,
#[yaserde(rename = "PartWayPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "PartWayPrdUnits"))]
pub part_way_prd_units: Option<SignedQuantityFormat13>,
}
impl Validate for BalanceFormat16Choice {}
#[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, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.002.16")]
pub struct BeneficiaryCertificationType14Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<BeneficiaryCertificationType6Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for BeneficiaryCertificationType14Choice {}
#[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.002.16")]
pub enum BeneficiaryCertificationType6Code {
#[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 = "PABD")]
#[cfg_attr(feature = "serde", serde(rename = "PABD"))]
Pabd,
#[yaserde(rename = "FRAC")]
#[cfg_attr(feature = "serde", serde(rename = "FRAC"))]
Frac,
#[yaserde(rename = "PAPW")]
#[cfg_attr(feature = "serde", serde(rename = "PAPW"))]
Papw,
#[yaserde(rename = "DIOR")]
#[cfg_attr(feature = "serde", serde(rename = "DIOR"))]
Dior,
__Unknown__(String),
}
impl Default for BeneficiaryCertificationType6Code {
fn default() -> BeneficiaryCertificationType6Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for BeneficiaryCertificationType6Code {}
#[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.002.16")]
pub struct BlockChainAddressWallet11 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max140Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification47,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
}
impl Validate for BlockChainAddressWallet11 {}
#[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.002.16")]
pub struct BorrowerLendingDeadline6 {
#[yaserde(rename = "StockLndgDdln")]
#[cfg_attr(feature = "serde", serde(rename = "StockLndgDdln"))]
pub stock_lndg_ddln: DateFormat49Choice,
#[yaserde(rename = "Brrwr")]
#[cfg_attr(feature = "serde", serde(rename = "Brrwr"))]
pub brrwr: PartyIdentification136Choice,
}
impl Validate for BorrowerLendingDeadline6 {}
#[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.002.16")]
pub struct CashAccountIdentification13Choice {
#[yaserde(rename = "IBAN")]
#[cfg_attr(feature = "serde", serde(rename = "IBAN"))]
pub iban: Option<Iban2007Identifier>,
#[yaserde(rename = "BlckChainCshWllt")]
#[cfg_attr(feature = "serde", serde(rename = "BlckChainCshWllt"))]
pub blck_chain_csh_wllt: Option<BlockChainAddressWallet11>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<RestrictedFINX2Max34Text>,
}
impl Validate for CashAccountIdentification13Choice {}
#[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.002.16")]
pub struct CashOption111 {
#[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: NonEligibleProceedsIndicator4Choice,
#[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: GenericIdentification47,
#[yaserde(rename = "OthrIncmTp")]
#[cfg_attr(feature = "serde", serde(rename = "OthrIncmTp"))]
pub othr_incm_tp: Vec<GenericIdentification47>,
#[yaserde(rename = "XmptnTp")]
#[cfg_attr(feature = "serde", serde(rename = "XmptnTp"))]
pub xmptn_tp: Vec<GenericIdentification47>,
#[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: CashAccountIdentification13Choice,
#[yaserde(rename = "AmtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "AmtDtls"))]
pub amt_dtls: CorporateActionAmounts75,
#[yaserde(rename = "DtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DtDtls"))]
pub dt_dtls: CorporateActionDate94,
#[yaserde(rename = "FXDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FXDtls"))]
pub fx_dtls: ForeignExchangeTerms42,
#[yaserde(rename = "RateAndAmtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RateAndAmtDtls"))]
pub rate_and_amt_dtls: Rate46,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: PriceDetails42,
}
impl Validate for CashOption111 {}
#[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.002.16")]
pub struct ClassificationType33Choice {
#[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<GenericIdentification86>,
}
impl Validate for ClassificationType33Choice {}
#[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.002.16")]
pub struct CorporateAction77 {
#[yaserde(rename = "DtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DtDtls"))]
pub dt_dtls: CorporateActionDate93,
#[yaserde(rename = "SctiesQty")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesQty"))]
pub scties_qty: CorporateActionQuantity13,
#[yaserde(rename = "EvtStag")]
#[cfg_attr(feature = "serde", serde(rename = "EvtStag"))]
pub evt_stag: CorporateActionEventStageFormat15Choice,
#[yaserde(rename = "AddtlBizPrcInd")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlBizPrcInd"))]
pub addtl_biz_prc_ind: Vec<AdditionalBusinessProcessFormat21Choice>,
#[yaserde(rename = "IntrmdtSctiesDstrbtnTp")]
#[cfg_attr(feature = "serde", serde(rename = "IntrmdtSctiesDstrbtnTp"))]
pub intrmdt_scties_dstrbtn_tp: IntermediateSecuritiesDistributionTypeFormat18Choice,
#[yaserde(rename = "LtryTp")]
#[cfg_attr(feature = "serde", serde(rename = "LtryTp"))]
pub ltry_tp: LotteryTypeFormat5Choice,
}
impl Validate for CorporateAction77 {}
#[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.002.16")]
pub struct CorporateActionAmounts61 {
#[yaserde(rename = "WhldgTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxAmt"))]
pub whldg_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "ScndLvlTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTaxAmt"))]
pub scnd_lvl_tax_amt: RestrictedFINActiveCurrencyAndAmount,
}
impl Validate for CorporateActionAmounts61 {}
#[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.002.16")]
pub struct CorporateActionAmounts75 {
#[yaserde(rename = "GrssAmt")]
#[cfg_attr(feature = "serde", serde(rename = "GrssAmt"))]
pub grss_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "NetAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NetAmt"))]
pub net_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "SlctnFees")]
#[cfg_attr(feature = "serde", serde(rename = "SlctnFees"))]
pub slctn_fees: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "CshInLieuOfShr")]
#[cfg_attr(feature = "serde", serde(rename = "CshInLieuOfShr"))]
pub csh_in_lieu_of_shr: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "CptlGn")]
#[cfg_attr(feature = "serde", serde(rename = "CptlGn"))]
pub cptl_gn: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "IntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstAmt"))]
pub intrst_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "MktClmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "MktClmAmt"))]
pub mkt_clm_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "IndmntyAmt")]
#[cfg_attr(feature = "serde", serde(rename = "IndmntyAmt"))]
pub indmnty_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "ManfctrdDvddPmtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ManfctrdDvddPmtAmt"))]
pub manfctrd_dvdd_pmt_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "RinvstmtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RinvstmtAmt"))]
pub rinvstmt_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "FullyFrnkdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FullyFrnkdAmt"))]
pub fully_frnkd_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "UfrnkdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "UfrnkdAmt"))]
pub ufrnkd_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "SndryOrOthrAmt")]
#[cfg_attr(feature = "serde", serde(rename = "SndryOrOthrAmt"))]
pub sndry_or_othr_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "TaxFreeAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxFreeAmt"))]
pub tax_free_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "TaxDfrrdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxDfrrdAmt"))]
pub tax_dfrrd_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "ValAddedTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ValAddedTaxAmt"))]
pub val_added_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "StmpDtyAmt")]
#[cfg_attr(feature = "serde", serde(rename = "StmpDtyAmt"))]
pub stmp_dty_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "TaxRclmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxRclmAmt"))]
pub tax_rclm_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "TaxCdtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCdtAmt"))]
pub tax_cdt_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "AddtlTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTaxAmt"))]
pub addtl_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "WhldgTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxAmt"))]
pub whldg_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "ScndLvlTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTaxAmt"))]
pub scnd_lvl_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "FsclStmpAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FsclStmpAmt"))]
pub fscl_stmp_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "ExctgBrkrAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ExctgBrkrAmt"))]
pub exctg_brkr_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "PngAgtComssnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "PngAgtComssnAmt"))]
pub png_agt_comssn_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "LclBrkrComssnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "LclBrkrComssnAmt"))]
pub lcl_brkr_comssn_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "RgltryFeesAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RgltryFeesAmt"))]
pub rgltry_fees_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "ShppgFeesAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ShppgFeesAmt"))]
pub shppg_fees_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "ChrgsAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsAmt"))]
pub chrgs_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "EntitldAmt")]
#[cfg_attr(feature = "serde", serde(rename = "EntitldAmt"))]
pub entitld_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "OrgnlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlAmt"))]
pub orgnl_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "AcrdIntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AcrdIntrstAmt"))]
pub acrd_intrst_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "IncmPrtn")]
#[cfg_attr(feature = "serde", serde(rename = "IncmPrtn"))]
pub incm_prtn: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "EqulstnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "EqulstnAmt"))]
pub equlstn_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "FATCATaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FATCATaxAmt"))]
pub fatca_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "NRATaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NRATaxAmt"))]
pub nra_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "BckUpWhldgTaxAmt")]
#[cfg_attr(feature = "serde", serde(rename = "BckUpWhldgTaxAmt"))]
pub bck_up_whldg_tax_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "TaxOnIncmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnIncmAmt"))]
pub tax_on_incm_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "TxTax")]
#[cfg_attr(feature = "serde", serde(rename = "TxTax"))]
pub tx_tax: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "DmdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdAmt"))]
pub dmd_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "FrgnIncmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FrgnIncmAmt"))]
pub frgn_incm_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "DmdDvddAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdDvddAmt"))]
pub dmd_dvdd_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "DmdFndAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdFndAmt"))]
pub dmd_fnd_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "DmdIntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdIntrstAmt"))]
pub dmd_intrst_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "DmdRyltsAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DmdRyltsAmt"))]
pub dmd_rylts_amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "BuyUpAmt")]
#[cfg_attr(feature = "serde", serde(rename = "BuyUpAmt"))]
pub buy_up_amt: RestrictedFINActiveCurrencyAndAmount,
}
impl Validate for CorporateActionAmounts75 {}
#[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.002.16")]
pub struct CorporateActionBalanceDetails46 {
#[yaserde(rename = "TtlElgblBal")]
#[cfg_attr(feature = "serde", serde(rename = "TtlElgblBal"))]
pub ttl_elgbl_bal: TotalEligibleBalanceFormat11,
#[yaserde(rename = "BlckdBal")]
#[cfg_attr(feature = "serde", serde(rename = "BlckdBal"))]
pub blckd_bal: BalanceFormat14Choice,
#[yaserde(rename = "BrrwdBal")]
#[cfg_attr(feature = "serde", serde(rename = "BrrwdBal"))]
pub brrwd_bal: BalanceFormat14Choice,
#[yaserde(rename = "CollInBal")]
#[cfg_attr(feature = "serde", serde(rename = "CollInBal"))]
pub coll_in_bal: BalanceFormat14Choice,
#[yaserde(rename = "CollOutBal")]
#[cfg_attr(feature = "serde", serde(rename = "CollOutBal"))]
pub coll_out_bal: BalanceFormat14Choice,
#[yaserde(rename = "OnLnBal")]
#[cfg_attr(feature = "serde", serde(rename = "OnLnBal"))]
pub on_ln_bal: BalanceFormat14Choice,
#[yaserde(rename = "PdgDlvryBal")]
#[cfg_attr(feature = "serde", serde(rename = "PdgDlvryBal"))]
pub pdg_dlvry_bal: Vec<BalanceFormat16Choice>,
#[yaserde(rename = "PdgRctBal")]
#[cfg_attr(feature = "serde", serde(rename = "PdgRctBal"))]
pub pdg_rct_bal: Vec<BalanceFormat16Choice>,
#[yaserde(rename = "OutForRegnBal")]
#[cfg_attr(feature = "serde", serde(rename = "OutForRegnBal"))]
pub out_for_regn_bal: BalanceFormat14Choice,
#[yaserde(rename = "SttlmPosBal")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmPosBal"))]
pub sttlm_pos_bal: Vec<BalanceFormat16Choice>,
#[yaserde(rename = "StrtPosBal")]
#[cfg_attr(feature = "serde", serde(rename = "StrtPosBal"))]
pub strt_pos_bal: BalanceFormat14Choice,
#[yaserde(rename = "TradDtPosBal")]
#[cfg_attr(feature = "serde", serde(rename = "TradDtPosBal"))]
pub trad_dt_pos_bal: BalanceFormat14Choice,
#[yaserde(rename = "InTrnsShipmntBal")]
#[cfg_attr(feature = "serde", serde(rename = "InTrnsShipmntBal"))]
pub in_trns_shipmnt_bal: BalanceFormat14Choice,
#[yaserde(rename = "RegdBal")]
#[cfg_attr(feature = "serde", serde(rename = "RegdBal"))]
pub regd_bal: BalanceFormat14Choice,
#[yaserde(rename = "OblgtdBal")]
#[cfg_attr(feature = "serde", serde(rename = "OblgtdBal"))]
pub oblgtd_bal: BalanceFormat14Choice,
#[yaserde(rename = "UinstdBal")]
#[cfg_attr(feature = "serde", serde(rename = "UinstdBal"))]
pub uinstd_bal: BalanceFormat14Choice,
#[yaserde(rename = "InstdBal")]
#[cfg_attr(feature = "serde", serde(rename = "InstdBal"))]
pub instd_bal: BalanceFormat14Choice,
#[yaserde(rename = "AfctdBal")]
#[cfg_attr(feature = "serde", serde(rename = "AfctdBal"))]
pub afctd_bal: BalanceFormat14Choice,
#[yaserde(rename = "UafctdBal")]
#[cfg_attr(feature = "serde", serde(rename = "UafctdBal"))]
pub uafctd_bal: BalanceFormat14Choice,
}
impl Validate for CorporateActionBalanceDetails46 {}
#[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.002.16")]
pub struct CorporateActionDate107 {
#[yaserde(rename = "EarlyRspnDdln")]
#[cfg_attr(feature = "serde", serde(rename = "EarlyRspnDdln"))]
pub early_rspn_ddln: DateFormat49Choice,
#[yaserde(rename = "CoverXprtnDdln")]
#[cfg_attr(feature = "serde", serde(rename = "CoverXprtnDdln"))]
pub cover_xprtn_ddln: DateFormat49Choice,
#[yaserde(rename = "PrtctDdln")]
#[cfg_attr(feature = "serde", serde(rename = "PrtctDdln"))]
pub prtct_ddln: DateFormat49Choice,
#[yaserde(rename = "MktDdln")]
#[cfg_attr(feature = "serde", serde(rename = "MktDdln"))]
pub mkt_ddln: DateFormat49Choice,
#[yaserde(rename = "RspnDdln")]
#[cfg_attr(feature = "serde", serde(rename = "RspnDdln"))]
pub rspn_ddln: DateFormat54Choice,
#[yaserde(rename = "XpryDt")]
#[cfg_attr(feature = "serde", serde(rename = "XpryDt"))]
pub xpry_dt: DateFormat49Choice,
#[yaserde(rename = "SbcptCostDbtDt")]
#[cfg_attr(feature = "serde", serde(rename = "SbcptCostDbtDt"))]
pub sbcpt_cost_dbt_dt: DateFormat49Choice,
#[yaserde(rename = "DpstryCoverXprtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "DpstryCoverXprtnDt"))]
pub dpstry_cover_xprtn_dt: DateFormat49Choice,
#[yaserde(rename = "StockLndgDdln")]
#[cfg_attr(feature = "serde", serde(rename = "StockLndgDdln"))]
pub stock_lndg_ddln: DateFormat49Choice,
#[yaserde(rename = "BrrwrStockLndgDdln")]
#[cfg_attr(feature = "serde", serde(rename = "BrrwrStockLndgDdln"))]
pub brrwr_stock_lndg_ddln: Vec<BorrowerLendingDeadline6>,
#[yaserde(rename = "DcmnttnDdln")]
#[cfg_attr(feature = "serde", serde(rename = "DcmnttnDdln"))]
pub dcmnttn_ddln: DateFormat49Choice,
}
impl Validate for CorporateActionDate107 {}
#[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.002.16")]
pub struct CorporateActionDate93 {
#[yaserde(rename = "RcrdDt")]
#[cfg_attr(feature = "serde", serde(rename = "RcrdDt"))]
pub rcrd_dt: DateFormat41Choice,
#[yaserde(rename = "ExDvddDt")]
#[cfg_attr(feature = "serde", serde(rename = "ExDvddDt"))]
pub ex_dvdd_dt: DateFormat41Choice,
#[yaserde(rename = "LtryDt")]
#[cfg_attr(feature = "serde", serde(rename = "LtryDt"))]
pub ltry_dt: DateFormat41Choice,
}
impl Validate for CorporateActionDate93 {}
#[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.002.16")]
pub struct CorporateActionDate94 {
#[yaserde(rename = "PmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "PmtDt"))]
pub pmt_dt: DateFormat41Choice,
#[yaserde(rename = "ValDt")]
#[cfg_attr(feature = "serde", serde(rename = "ValDt"))]
pub val_dt: DateFormat64Choice,
#[yaserde(rename = "FXRateFxgDt")]
#[cfg_attr(feature = "serde", serde(rename = "FXRateFxgDt"))]
pub fx_rate_fxg_dt: DateFormat49Choice,
#[yaserde(rename = "EarlstPmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "EarlstPmtDt"))]
pub earlst_pmt_dt: DateFormat41Choice,
}
impl Validate for CorporateActionDate94 {}
#[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.002.16")]
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.002.16")]
pub struct CorporateActionEventProcessingType3Choice {
#[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<GenericIdentification47>,
}
impl Validate for CorporateActionEventProcessingType3Choice {}
#[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.002.16")]
pub struct CorporateActionEventReference4 {
#[yaserde(rename = "EvtId")]
#[cfg_attr(feature = "serde", serde(rename = "EvtId"))]
pub evt_id: CorporateActionEventReference4Choice,
#[yaserde(rename = "LkgTp")]
#[cfg_attr(feature = "serde", serde(rename = "LkgTp"))]
pub lkg_tp: ProcessingPosition10Choice,
}
impl Validate for CorporateActionEventReference4 {}
#[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.002.16")]
pub struct CorporateActionEventReference4Choice {
#[yaserde(rename = "LkdOffclCorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "LkdOffclCorpActnEvtId"))]
pub lkd_offcl_corp_actn_evt_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "LkdCorpActnId")]
#[cfg_attr(feature = "serde", serde(rename = "LkdCorpActnId"))]
pub lkd_corp_actn_id: Option<RestrictedFINXMax16Text>,
}
impl Validate for CorporateActionEventReference4Choice {}
#[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.002.16")]
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.002.16")]
pub struct CorporateActionEventStageFormat15Choice {
#[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<GenericIdentification47>,
}
impl Validate for CorporateActionEventStageFormat15Choice {}
#[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.002.16")]
pub struct CorporateActionEventType122Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionEventType36Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for CorporateActionEventType122Choice {}
#[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.002.16")]
pub enum CorporateActionEventType36Code {
#[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,
#[yaserde(rename = "RCLA")]
#[cfg_attr(feature = "serde", serde(rename = "RCLA"))]
Rcla,
__Unknown__(String),
}
impl Default for CorporateActionEventType36Code {
fn default() -> CorporateActionEventType36Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionEventType36Code {}
#[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.002.16")]
pub struct CorporateActionGeneralInformation192 {
#[yaserde(rename = "CorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnEvtId"))]
pub corp_actn_evt_id: RestrictedFINXMax16Text,
#[yaserde(rename = "OffclCorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "OffclCorpActnEvtId"))]
pub offcl_corp_actn_evt_id: RestrictedFINXMax16Text,
#[yaserde(rename = "ClssActnNb")]
#[cfg_attr(feature = "serde", serde(rename = "ClssActnNb"))]
pub clss_actn_nb: RestrictedFINXMax16Text,
#[yaserde(rename = "EvtPrcgTp")]
#[cfg_attr(feature = "serde", serde(rename = "EvtPrcgTp"))]
pub evt_prcg_tp: CorporateActionEventProcessingType3Choice,
#[yaserde(rename = "EvtTp")]
#[cfg_attr(feature = "serde", serde(rename = "EvtTp"))]
pub evt_tp: CorporateActionEventType122Choice,
#[yaserde(rename = "MndtryVlntryEvtTp")]
#[cfg_attr(feature = "serde", serde(rename = "MndtryVlntryEvtTp"))]
pub mndtry_vlntry_evt_tp: CorporateActionMandatoryVoluntary4Choice,
#[yaserde(rename = "UndrlygScty")]
#[cfg_attr(feature = "serde", serde(rename = "UndrlygScty"))]
pub undrlyg_scty: FinancialInstrumentAttributes134,
}
impl Validate for CorporateActionGeneralInformation192 {}
#[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.002.16")]
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.002.16")]
pub struct CorporateActionMandatoryVoluntary4Choice {
#[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<GenericIdentification47>,
}
impl Validate for CorporateActionMandatoryVoluntary4Choice {}
#[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.002.16")]
pub struct CorporateActionMovementPreliminaryAdvice002V16 {
#[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: CorporateActionPreliminaryAdviceType5,
#[yaserde(rename = "PrvsMvmntPrlimryAdvcId")]
#[cfg_attr(feature = "serde", serde(rename = "PrvsMvmntPrlimryAdvcId"))]
pub prvs_mvmnt_prlimry_advc_id: DocumentIdentification37,
#[yaserde(rename = "NtfctnId")]
#[cfg_attr(feature = "serde", serde(rename = "NtfctnId"))]
pub ntfctn_id: DocumentIdentification37,
#[yaserde(rename = "MvmntConfId")]
#[cfg_attr(feature = "serde", serde(rename = "MvmntConfId"))]
pub mvmnt_conf_id: DocumentIdentification37,
#[yaserde(rename = "InstrId")]
#[cfg_attr(feature = "serde", serde(rename = "InstrId"))]
pub instr_id: DocumentIdentification17,
#[yaserde(rename = "OthrDocId")]
#[cfg_attr(feature = "serde", serde(rename = "OthrDocId"))]
pub othr_doc_id: Vec<DocumentIdentification38>,
#[yaserde(rename = "EvtsLkg")]
#[cfg_attr(feature = "serde", serde(rename = "EvtsLkg"))]
pub evts_lkg: Vec<CorporateActionEventReference4>,
#[yaserde(rename = "RvslRsn")]
#[cfg_attr(feature = "serde", serde(rename = "RvslRsn"))]
pub rvsl_rsn: CorporateActionReversalReason9,
#[yaserde(rename = "CorpActnGnlInf")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnGnlInf"))]
pub corp_actn_gnl_inf: CorporateActionGeneralInformation192,
#[yaserde(rename = "AcctDtls")]
#[cfg_attr(feature = "serde", serde(rename = "AcctDtls"))]
pub acct_dtls: AccountIdentification76Choice,
#[yaserde(rename = "CorpActnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnDtls"))]
pub corp_actn_dtls: CorporateAction77,
#[yaserde(rename = "CorpActnMvmntDtls")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnMvmntDtls"))]
pub corp_actn_mvmnt_dtls: Vec<CorporateActionOption245>,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: CorporateActionNarrative62,
#[yaserde(rename = "IssrAgt")]
#[cfg_attr(feature = "serde", serde(rename = "IssrAgt"))]
pub issr_agt: Vec<PartyIdentification151Choice>,
#[yaserde(rename = "PngAgt")]
#[cfg_attr(feature = "serde", serde(rename = "PngAgt"))]
pub png_agt: Vec<PartyIdentification137Choice>,
#[yaserde(rename = "SubPngAgt")]
#[cfg_attr(feature = "serde", serde(rename = "SubPngAgt"))]
pub sub_png_agt: Vec<PartyIdentification137Choice>,
#[yaserde(rename = "Regar")]
#[cfg_attr(feature = "serde", serde(rename = "Regar"))]
pub regar: PartyIdentification137Choice,
#[yaserde(rename = "RsellngAgt")]
#[cfg_attr(feature = "serde", serde(rename = "RsellngAgt"))]
pub rsellng_agt: Vec<PartyIdentification137Choice>,
#[yaserde(rename = "PhysSctiesAgt")]
#[cfg_attr(feature = "serde", serde(rename = "PhysSctiesAgt"))]
pub phys_scties_agt: PartyIdentification137Choice,
#[yaserde(rename = "DrpAgt")]
#[cfg_attr(feature = "serde", serde(rename = "DrpAgt"))]
pub drp_agt: PartyIdentification137Choice,
#[yaserde(rename = "SlctnAgt")]
#[cfg_attr(feature = "serde", serde(rename = "SlctnAgt"))]
pub slctn_agt: Vec<PartyIdentification137Choice>,
#[yaserde(rename = "InfAgt")]
#[cfg_attr(feature = "serde", serde(rename = "InfAgt"))]
pub inf_agt: PartyIdentification137Choice,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: PartyIdentification151Choice,
#[yaserde(rename = "Offerr")]
#[cfg_attr(feature = "serde", serde(rename = "Offerr"))]
pub offerr: Vec<PartyIdentification151Choice>,
#[yaserde(rename = "TrfAgt")]
#[cfg_attr(feature = "serde", serde(rename = "TrfAgt"))]
pub trf_agt: PartyIdentification151Choice,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
}
impl Validate for CorporateActionMovementPreliminaryAdvice002V16 {}
#[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.002.16")]
pub enum CorporateActionMovementPreliminaryAdviceFunction1Code {
#[yaserde(rename = "ENTL")]
#[cfg_attr(feature = "serde", serde(rename = "ENTL"))]
Entl,
#[yaserde(rename = "CAPA")]
#[cfg_attr(feature = "serde", serde(rename = "CAPA"))]
Capa,
__Unknown__(String),
}
impl Default for CorporateActionMovementPreliminaryAdviceFunction1Code {
fn default() -> CorporateActionMovementPreliminaryAdviceFunction1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionMovementPreliminaryAdviceFunction1Code {}
#[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.002.16")]
pub struct CorporateActionNarrative61 {
#[yaserde(rename = "AddtlTxt")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTxt"))]
pub addtl_txt: UpdatedAdditionalInformation22,
#[yaserde(rename = "NrrtvVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "NrrtvVrsn"))]
pub nrrtv_vrsn: UpdatedAdditionalInformation22,
#[yaserde(rename = "InfConds")]
#[cfg_attr(feature = "serde", serde(rename = "InfConds"))]
pub inf_conds: UpdatedAdditionalInformation23,
#[yaserde(rename = "InfToCmplyWth")]
#[cfg_attr(feature = "serde", serde(rename = "InfToCmplyWth"))]
pub inf_to_cmply_wth: UpdatedAdditionalInformation23,
#[yaserde(rename = "SctyRstrctn")]
#[cfg_attr(feature = "serde", serde(rename = "SctyRstrctn"))]
pub scty_rstrctn: UpdatedAdditionalInformation23,
#[yaserde(rename = "TaxtnConds")]
#[cfg_attr(feature = "serde", serde(rename = "TaxtnConds"))]
pub taxtn_conds: UpdatedAdditionalInformation23,
#[yaserde(rename = "Dsclmr")]
#[cfg_attr(feature = "serde", serde(rename = "Dsclmr"))]
pub dsclmr: UpdatedAdditionalInformation23,
#[yaserde(rename = "CertfctnBrkdwn")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnBrkdwn"))]
pub certfctn_brkdwn: UpdatedAdditionalInformation23,
}
impl Validate for CorporateActionNarrative61 {}
#[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.002.16")]
pub struct CorporateActionNarrative62 {
#[yaserde(rename = "AddtlTxt")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTxt"))]
pub addtl_txt: UpdatedAdditionalInformation23,
#[yaserde(rename = "NrrtvVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "NrrtvVrsn"))]
pub nrrtv_vrsn: UpdatedAdditionalInformation23,
#[yaserde(rename = "InfConds")]
#[cfg_attr(feature = "serde", serde(rename = "InfConds"))]
pub inf_conds: UpdatedAdditionalInformation23,
#[yaserde(rename = "InfToCmplyWth")]
#[cfg_attr(feature = "serde", serde(rename = "InfToCmplyWth"))]
pub inf_to_cmply_wth: UpdatedAdditionalInformation23,
#[yaserde(rename = "TaxtnConds")]
#[cfg_attr(feature = "serde", serde(rename = "TaxtnConds"))]
pub taxtn_conds: UpdatedAdditionalInformation23,
#[yaserde(rename = "Dsclmr")]
#[cfg_attr(feature = "serde", serde(rename = "Dsclmr"))]
pub dsclmr: UpdatedAdditionalInformation23,
#[yaserde(rename = "PtyCtctNrrtv")]
#[cfg_attr(feature = "serde", serde(rename = "PtyCtctNrrtv"))]
pub pty_ctct_nrrtv: UpdatedAdditionalInformation23,
#[yaserde(rename = "RegnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RegnDtls"))]
pub regn_dtls: UpdatedAdditionalInformation23,
#[yaserde(rename = "BsktOrIndxInf")]
#[cfg_attr(feature = "serde", serde(rename = "BsktOrIndxInf"))]
pub bskt_or_indx_inf: UpdatedAdditionalInformation23,
#[yaserde(rename = "CertfctnBrkdwn")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnBrkdwn"))]
pub certfctn_brkdwn: UpdatedAdditionalInformation23,
#[yaserde(rename = "PrcgTxtForNxtIntrmy")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgTxtForNxtIntrmy"))]
pub prcg_txt_for_nxt_intrmy: UpdatedAdditionalInformation23,
}
impl Validate for CorporateActionNarrative62 {}
#[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.002.16")]
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.002.16")]
pub struct CorporateActionOption245 {
#[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: CorporateActionOption46Choice,
#[yaserde(rename = "FrctnDspstn")]
#[cfg_attr(feature = "serde", serde(rename = "FrctnDspstn"))]
pub frctn_dspstn: FractionDispositionType31Choice,
#[yaserde(rename = "OfferTp")]
#[cfg_attr(feature = "serde", serde(rename = "OfferTp"))]
pub offer_tp: Vec<OfferTypeFormat15Choice>,
#[yaserde(rename = "OptnFeatrs")]
#[cfg_attr(feature = "serde", serde(rename = "OptnFeatrs"))]
pub optn_featrs: Vec<OptionFeaturesFormat31Choice>,
#[yaserde(rename = "OptnAvlbtySts")]
#[cfg_attr(feature = "serde", serde(rename = "OptnAvlbtySts"))]
pub optn_avlbty_sts: OptionAvailabilityStatus4Choice,
#[yaserde(rename = "CertfctnBrkdwnTp")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnBrkdwnTp"))]
pub certfctn_brkdwn_tp: Vec<BeneficiaryCertificationType14Choice>,
#[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: DefaultProcessingOrStandingInstruction2Choice,
#[yaserde(rename = "ChrgsApldInd")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsApldInd"))]
pub chrgs_apld_ind: YesNoIndicator,
#[yaserde(rename = "AccptncPrtyLvl")]
#[cfg_attr(feature = "serde", serde(rename = "AccptncPrtyLvl"))]
pub accptnc_prty_lvl: Exact3UpperCaseAlphaNumericText,
#[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: SecurityIdentification20,
#[yaserde(rename = "DtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DtDtls"))]
pub dt_dtls: CorporateActionDate107,
#[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: CorporateActionRate133,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: CorporateActionPrice94,
#[yaserde(rename = "SctiesQty")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesQty"))]
pub scties_qty: SecuritiesOption84,
#[yaserde(rename = "SctiesMvmntDtls")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesMvmntDtls"))]
pub scties_mvmnt_dtls: Vec<SecuritiesOption116>,
#[yaserde(rename = "CshMvmntDtls")]
#[cfg_attr(feature = "serde", serde(rename = "CshMvmntDtls"))]
pub csh_mvmnt_dtls: Vec<CashOption111>,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: CorporateActionNarrative61,
}
impl Validate for CorporateActionOption245 {}
#[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.002.16")]
pub struct CorporateActionOption46Choice {
#[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<GenericIdentification47>,
}
impl Validate for CorporateActionOption46Choice {}
#[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.002.16")]
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.002.16")]
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.002.16")]
pub struct CorporateActionPreliminaryAdviceType5 {
#[yaserde(rename = "MvmntPrlimryAdvcId")]
#[cfg_attr(feature = "serde", serde(rename = "MvmntPrlimryAdvcId"))]
pub mvmnt_prlimry_advc_id: RestrictedFINXMax16Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: CorporateActionPreliminaryAdviceType1Code,
#[yaserde(rename = "Fctn")]
#[cfg_attr(feature = "serde", serde(rename = "Fctn"))]
pub fctn: CorporateActionMovementPreliminaryAdviceFunction1Code,
}
impl Validate for CorporateActionPreliminaryAdviceType5 {}
#[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.002.16")]
pub struct CorporateActionPrice94 {
#[yaserde(rename = "CshInLieuOfShrPric")]
#[cfg_attr(feature = "serde", serde(rename = "CshInLieuOfShrPric"))]
pub csh_in_lieu_of_shr_pric: PriceFormat88Choice,
#[yaserde(rename = "OverSbcptDpstPric")]
#[cfg_attr(feature = "serde", serde(rename = "OverSbcptDpstPric"))]
pub over_sbcpt_dpst_pric: PriceFormat88Choice,
#[yaserde(rename = "MaxCshToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MaxCshToInst"))]
pub max_csh_to_inst: PriceFormat62Choice,
#[yaserde(rename = "MinCshToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinCshToInst"))]
pub min_csh_to_inst: PriceFormat62Choice,
#[yaserde(rename = "MinMltplCshToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinMltplCshToInst"))]
pub min_mltpl_csh_to_inst: PriceFormat62Choice,
}
impl Validate for CorporateActionPrice94 {}
#[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.002.16")]
pub struct CorporateActionPrice95 {
#[yaserde(rename = "IndctvOrMktPric")]
#[cfg_attr(feature = "serde", serde(rename = "IndctvOrMktPric"))]
pub indctv_or_mkt_pric: IndicativeOrMarketPrice17Choice,
#[yaserde(rename = "CshInLieuOfShrPric")]
#[cfg_attr(feature = "serde", serde(rename = "CshInLieuOfShrPric"))]
pub csh_in_lieu_of_shr_pric: PriceFormat88Choice,
#[yaserde(rename = "CshValForTax")]
#[cfg_attr(feature = "serde", serde(rename = "CshValForTax"))]
pub csh_val_for_tax: PriceFormat58Choice,
#[yaserde(rename = "GncCshPricPdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricPdPerPdct"))]
pub gnc_csh_pric_pd_per_pdct: PriceFormat89Choice,
#[yaserde(rename = "GncCshPricRcvdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricRcvdPerPdct"))]
pub gnc_csh_pric_rcvd_per_pdct: PriceFormat90Choice,
}
impl Validate for CorporateActionPrice95 {}
#[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.002.16")]
pub struct CorporateActionQuantity13 {
#[yaserde(rename = "BaseDnmtn")]
#[cfg_attr(feature = "serde", serde(rename = "BaseDnmtn"))]
pub base_dnmtn: FinancialInstrumentQuantity43Choice,
#[yaserde(rename = "IncrmtlDnmtn")]
#[cfg_attr(feature = "serde", serde(rename = "IncrmtlDnmtn"))]
pub incrmtl_dnmtn: FinancialInstrumentQuantity43Choice,
}
impl Validate for CorporateActionQuantity13 {}
#[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.002.16")]
pub struct CorporateActionRate133 {
#[yaserde(rename = "AddtlTax")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTax"))]
pub addtl_tax: RateAndAmountFormat69Choice,
#[yaserde(rename = "GrssDstrbtnRate")]
#[cfg_attr(feature = "serde", serde(rename = "GrssDstrbtnRate"))]
pub grss_dstrbtn_rate: Vec<GrossDividendRateFormat41Choice>,
#[yaserde(rename = "NetDstrbtnRate")]
#[cfg_attr(feature = "serde", serde(rename = "NetDstrbtnRate"))]
pub net_dstrbtn_rate: Vec<NetDividendRateFormat43Choice>,
#[yaserde(rename = "GrssIntrstRateUsdForPmt")]
#[cfg_attr(feature = "serde", serde(rename = "GrssIntrstRateUsdForPmt"))]
pub grss_intrst_rate_usd_for_pmt: Vec<InterestRateUsedForPaymentFormat18Choice>,
#[yaserde(rename = "MaxAllwdOvrsbcptRate")]
#[cfg_attr(feature = "serde", serde(rename = "MaxAllwdOvrsbcptRate"))]
pub max_allwd_ovrsbcpt_rate: RateFormat24Choice,
#[yaserde(rename = "PrratnRate")]
#[cfg_attr(feature = "serde", serde(rename = "PrratnRate"))]
pub prratn_rate: RateFormat24Choice,
#[yaserde(rename = "WhldgTaxRate")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxRate"))]
pub whldg_tax_rate: Vec<RateAndAmountFormat70Choice>,
#[yaserde(rename = "ScndLvlTax")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTax"))]
pub scnd_lvl_tax: Vec<RateAndAmountFormat70Choice>,
#[yaserde(rename = "TaxblIncmPerDvddShr")]
#[cfg_attr(feature = "serde", serde(rename = "TaxblIncmPerDvddShr"))]
pub taxbl_incm_per_dvdd_shr: Vec<RateTypeAndAmountAndStatus33>,
#[yaserde(rename = "TaxOnIncm")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnIncm"))]
pub tax_on_incm: RateAndAmountFormat69Choice,
}
impl Validate for CorporateActionRate133 {}
#[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.002.16")]
pub struct CorporateActionRate134 {
#[yaserde(rename = "AddtlQtyForSbcbdRsltntScties")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlQtyForSbcbdRsltntScties"))]
pub addtl_qty_for_sbcbd_rsltnt_scties: RatioFormat23Choice,
#[yaserde(rename = "AddtlQtyForExstgScties")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlQtyForExstgScties"))]
pub addtl_qty_for_exstg_scties: RatioFormat23Choice,
#[yaserde(rename = "NewToOd")]
#[cfg_attr(feature = "serde", serde(rename = "NewToOd"))]
pub new_to_od: RatioFormat24Choice,
#[yaserde(rename = "TrfrmatnRate")]
#[cfg_attr(feature = "serde", serde(rename = "TrfrmatnRate"))]
pub trfrmatn_rate: Percentage14Rate,
#[yaserde(rename = "ChrgsFees")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsFees"))]
pub chrgs_fees: RateAndAmountFormat69Choice,
#[yaserde(rename = "FsclStmp")]
#[cfg_attr(feature = "serde", serde(rename = "FsclStmp"))]
pub fscl_stmp: RateFormat24Choice,
#[yaserde(rename = "AplblRate")]
#[cfg_attr(feature = "serde", serde(rename = "AplblRate"))]
pub aplbl_rate: RateFormat24Choice,
#[yaserde(rename = "TaxCdtRate")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCdtRate"))]
pub tax_cdt_rate: RateFormat29Choice,
#[yaserde(rename = "FinTxTaxRate")]
#[cfg_attr(feature = "serde", serde(rename = "FinTxTaxRate"))]
pub fin_tx_tax_rate: RateFormat24Choice,
#[yaserde(rename = "WhldgTaxRate")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxRate"))]
pub whldg_tax_rate: Vec<RateAndAmountFormat70Choice>,
#[yaserde(rename = "ScndLvlTax")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTax"))]
pub scnd_lvl_tax: Vec<RateAndAmountFormat70Choice>,
}
impl Validate for CorporateActionRate134 {}
#[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.002.16")]
pub struct CorporateActionReversalReason11Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionReversalReason3Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for CorporateActionReversalReason11Choice {}
#[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.002.16")]
pub enum CorporateActionReversalReason3Code {
#[yaserde(rename = "DCBD")]
#[cfg_attr(feature = "serde", serde(rename = "DCBD"))]
Dcbd,
#[yaserde(rename = "FNRC")]
#[cfg_attr(feature = "serde", serde(rename = "FNRC"))]
Fnrc,
#[yaserde(rename = "IRED")]
#[cfg_attr(feature = "serde", serde(rename = "IRED"))]
Ired,
#[yaserde(rename = "IETR")]
#[cfg_attr(feature = "serde", serde(rename = "IETR"))]
Ietr,
#[yaserde(rename = "IPCU")]
#[cfg_attr(feature = "serde", serde(rename = "IPCU"))]
Ipcu,
#[yaserde(rename = "IPRI")]
#[cfg_attr(feature = "serde", serde(rename = "IPRI"))]
Ipri,
#[yaserde(rename = "IVAD")]
#[cfg_attr(feature = "serde", serde(rename = "IVAD"))]
Ivad,
#[yaserde(rename = "UPAY")]
#[cfg_attr(feature = "serde", serde(rename = "UPAY"))]
Upay,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for CorporateActionReversalReason3Code {
fn default() -> CorporateActionReversalReason3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionReversalReason3Code {}
#[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.002.16")]
pub struct CorporateActionReversalReason9 {
#[yaserde(rename = "Rsn")]
#[cfg_attr(feature = "serde", serde(rename = "Rsn"))]
pub rsn: CorporateActionReversalReason11Choice,
#[yaserde(rename = "AddtlRsnInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlRsnInf"))]
pub addtl_rsn_inf: RestrictedFINXMax256Text,
}
impl Validate for CorporateActionReversalReason9 {}
#[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.002.16")]
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)]
pub struct Dti2024Identifier (pub String);
crate::simple_type!(Dti2024Identifier);
impl Validate for Dti2024Identifier {}
#[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.002.16")]
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.002.16")]
pub struct DateCode22Choice {
#[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<GenericIdentification47>,
}
impl Validate for DateCode22Choice {}
#[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.002.16")]
pub struct DateCode26Choice {
#[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<GenericIdentification47>,
}
impl Validate for DateCode26Choice {}
#[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.002.16")]
pub struct DateCode27Choice {
#[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<GenericIdentification47>,
}
impl Validate for DateCode27Choice {}
#[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.002.16")]
pub struct DateCodeAndTimeFormat4 {
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: DateCode26Choice,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
}
impl Validate for DateCodeAndTimeFormat4 {}
#[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.002.16")]
pub struct DateFormat41Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<Isodate>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<DateCode22Choice>,
}
impl Validate for DateFormat41Choice {}
#[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.002.16")]
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.002.16")]
pub struct DateFormat49Choice {
#[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<DateCode22Choice>,
}
impl Validate for DateFormat49Choice {}
#[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.002.16")]
pub struct DateFormat54Choice {
#[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<DateCodeAndTimeFormat4>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<DateCode22Choice>,
}
impl Validate for DateFormat54Choice {}
#[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.002.16")]
pub struct DateFormat64Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<Isodate>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<DateCode27Choice>,
}
impl Validate for DateFormat64Choice {}
#[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.002.16")]
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.002.16")]
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.002.16")]
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.002.16")]
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.002.16")]
pub struct DeemedRateType2Choice {
#[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<GenericIdentification47>,
}
impl Validate for DeemedRateType2Choice {}
#[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.002.16")]
pub struct DefaultProcessingOrStandingInstruction2Choice {
#[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 DefaultProcessingOrStandingInstruction2Choice {}
#[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.002.16")]
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.002.16")]
pub struct Document {
#[yaserde(rename = "CorpActnMvmntPrlimryAdvc")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnMvmntPrlimryAdvc"))]
pub corp_actn_mvmnt_prlimry_advc: CorporateActionMovementPreliminaryAdvice002V16,
}
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.002.16")]
pub struct DocumentIdentification17 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax16Text,
}
impl Validate for DocumentIdentification17 {}
#[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.002.16")]
pub struct DocumentIdentification37 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax16Text,
#[yaserde(rename = "LkgTp")]
#[cfg_attr(feature = "serde", serde(rename = "LkgTp"))]
pub lkg_tp: ProcessingPosition10Choice,
}
impl Validate for DocumentIdentification37 {}
#[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.002.16")]
pub struct DocumentIdentification38 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: DocumentIdentification4Choice,
#[yaserde(rename = "DocNb")]
#[cfg_attr(feature = "serde", serde(rename = "DocNb"))]
pub doc_nb: DocumentNumber6Choice,
#[yaserde(rename = "LkgTp")]
#[cfg_attr(feature = "serde", serde(rename = "LkgTp"))]
pub lkg_tp: ProcessingPosition10Choice,
}
impl Validate for DocumentIdentification38 {}
#[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.002.16")]
pub struct DocumentIdentification4Choice {
#[yaserde(rename = "AcctSvcrDocId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrDocId"))]
pub acct_svcr_doc_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "AcctOwnrDocId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnrDocId"))]
pub acct_ownr_doc_id: Option<RestrictedFINXMax16Text>,
}
impl Validate for DocumentIdentification4Choice {}
#[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.002.16")]
pub struct DocumentNumber6Choice {
#[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<GenericIdentification86>,
}
impl Validate for DocumentNumber6Choice {}
#[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 Exact3UpperCaseAlphaNumericText (pub String);
crate::simple_type!(Exact3UpperCaseAlphaNumericText);
impl Validate for Exact3UpperCaseAlphaNumericText {}
#[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.002.16")]
pub struct FinancialInstrumentAttributes134 {
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification20,
#[yaserde(rename = "PlcOfListg")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfListg"))]
pub plc_of_listg: MarketIdentification4Choice,
#[yaserde(rename = "DayCntBsis")]
#[cfg_attr(feature = "serde", serde(rename = "DayCntBsis"))]
pub day_cnt_bsis: InterestComputationMethodFormat5Choice,
#[yaserde(rename = "ClssfctnTp")]
#[cfg_attr(feature = "serde", serde(rename = "ClssfctnTp"))]
pub clssfctn_tp: ClassificationType33Choice,
#[yaserde(rename = "OptnStyle")]
#[cfg_attr(feature = "serde", serde(rename = "OptnStyle"))]
pub optn_style: OptionStyle9Choice,
#[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: RateFormat24Choice,
#[yaserde(rename = "NxtIntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "NxtIntrstRate"))]
pub nxt_intrst_rate: RateFormat24Choice,
#[yaserde(rename = "PctgOfDebtClm")]
#[cfg_attr(feature = "serde", serde(rename = "PctgOfDebtClm"))]
pub pctg_of_debt_clm: RateFormat24Choice,
#[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: QuantityToQuantityRatio2,
#[yaserde(rename = "MinNmnlQty")]
#[cfg_attr(feature = "serde", serde(rename = "MinNmnlQty"))]
pub min_nmnl_qty: FinancialInstrumentQuantity36Choice,
#[yaserde(rename = "CtrctSz")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctSz"))]
pub ctrct_sz: FinancialInstrumentQuantity36Choice,
}
impl Validate for FinancialInstrumentAttributes134 {}
#[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.002.16")]
pub struct FinancialInstrumentAttributes135 {
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification20,
#[yaserde(rename = "PlcOfListg")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfListg"))]
pub plc_of_listg: MarketIdentification4Choice,
#[yaserde(rename = "DayCntBsis")]
#[cfg_attr(feature = "serde", serde(rename = "DayCntBsis"))]
pub day_cnt_bsis: InterestComputationMethodFormat5Choice,
#[yaserde(rename = "ClssfctnTp")]
#[cfg_attr(feature = "serde", serde(rename = "ClssfctnTp"))]
pub clssfctn_tp: ClassificationType33Choice,
#[yaserde(rename = "OptnStyle")]
#[cfg_attr(feature = "serde", serde(rename = "OptnStyle"))]
pub optn_style: OptionStyle9Choice,
#[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: RateFormat24Choice,
#[yaserde(rename = "NxtIntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "NxtIntrstRate"))]
pub nxt_intrst_rate: RateFormat24Choice,
#[yaserde(rename = "MinNmnlQty")]
#[cfg_attr(feature = "serde", serde(rename = "MinNmnlQty"))]
pub min_nmnl_qty: FinancialInstrumentQuantity36Choice,
#[yaserde(rename = "MinQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinQtyToInst"))]
pub min_qty_to_inst: FinancialInstrumentQuantity36Choice,
#[yaserde(rename = "MinMltplQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinMltplQtyToInst"))]
pub min_mltpl_qty_to_inst: FinancialInstrumentQuantity36Choice,
#[yaserde(rename = "CtrctSz")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctSz"))]
pub ctrct_sz: FinancialInstrumentQuantity36Choice,
#[yaserde(rename = "IssePric")]
#[cfg_attr(feature = "serde", serde(rename = "IssePric"))]
pub isse_pric: PriceFormat88Choice,
}
impl Validate for FinancialInstrumentAttributes135 {}
#[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.002.16")]
pub struct FinancialInstrumentQuantity36Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<RestrictedFINDecimalNumber>,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: Option<RestrictedFINImpliedCurrencyAndAmount>,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: Option<RestrictedFINImpliedCurrencyAndAmount>,
#[yaserde(rename = "DgtlTknUnit")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlTknUnit"))]
pub dgtl_tkn_unit: Option<Max30DecimalNumber>,
}
impl Validate for FinancialInstrumentQuantity36Choice {}
#[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.002.16")]
pub struct FinancialInstrumentQuantity43Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<RestrictedFINDecimalNumber>,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: Option<RestrictedFINImpliedCurrencyAndAmount>,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: Option<RestrictedFINImpliedCurrencyAndAmount>,
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Quantity5Code>,
#[yaserde(rename = "DgtlTknUnit")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlTknUnit"))]
pub dgtl_tkn_unit: Option<Max30DecimalNumber>,
}
impl Validate for FinancialInstrumentQuantity43Choice {}
#[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.002.16")]
pub struct FinancialInstrumentQuantity44Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<RestrictedFINDecimalNumber>,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: Option<RestrictedFINImpliedCurrencyAndAmount>,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: Option<RestrictedFINImpliedCurrencyAndAmount>,
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Quantity4Code>,
#[yaserde(rename = "DgtlTknUnit")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlTknUnit"))]
pub dgtl_tkn_unit: Option<Max30DecimalNumber>,
}
impl Validate for FinancialInstrumentQuantity44Choice {}
#[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.002.16")]
pub struct ForeignExchangeTerms42 {
#[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: BaseOne14Rate,
#[yaserde(rename = "RsltgAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RsltgAmt"))]
pub rsltg_amt: RestrictedFINActiveCurrencyAndAmount,
}
impl Validate for ForeignExchangeTerms42 {}
#[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.002.16")]
pub struct FractionDispositionType31Choice {
#[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<GenericIdentification47>,
}
impl Validate for FractionDispositionType31Choice {}
#[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.002.16")]
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.002.16")]
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.002.16")]
pub struct GenericIdentification84 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax34Text,
#[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 GenericIdentification84 {}
#[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.002.16")]
pub struct GenericIdentification85 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification47,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax30Text,
}
impl Validate for GenericIdentification85 {}
#[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.002.16")]
pub struct GenericIdentification86 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax30Text,
#[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 GenericIdentification86 {}
#[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.002.16")]
pub struct GrossDividendRateFormat41Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "AmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "AmtAndRateSts"))]
pub amt_and_rate_sts: Option<AmountAndRateStatus2>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus59>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType13Code>,
}
impl Validate for GrossDividendRateFormat41Choice {}
#[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.002.16")]
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(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.002.16")]
pub struct IdentificationSource4Choice {
#[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<RestrictedFINExact2Text>,
}
impl Validate for IdentificationSource4Choice {}
#[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.002.16")]
pub struct IndicativeOrMarketPrice17Choice {
#[yaserde(rename = "IndctvPric")]
#[cfg_attr(feature = "serde", serde(rename = "IndctvPric"))]
pub indctv_pric: Option<PriceFormat88Choice>,
#[yaserde(rename = "MktPric")]
#[cfg_attr(feature = "serde", serde(rename = "MktPric"))]
pub mkt_pric: Option<PriceFormat88Choice>,
}
impl Validate for IndicativeOrMarketPrice17Choice {}
#[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.002.16")]
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.002.16")]
pub struct InterestComputationMethodFormat5Choice {
#[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<GenericIdentification47>,
}
impl Validate for InterestComputationMethodFormat5Choice {}
#[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.002.16")]
pub struct InterestRateUsedForPaymentFormat18Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<Percentage14Rate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus32>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType13Code>,
}
impl Validate for InterestRateUsedForPaymentFormat18Choice {}
#[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.002.16")]
pub struct IntermediateSecuritiesDistributionTypeFormat18Choice {
#[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<GenericIdentification47>,
}
impl Validate for IntermediateSecuritiesDistributionTypeFormat18Choice {}
#[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.002.16")]
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.002.16")]
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.002.16")]
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.002.16")]
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.002.16")]
pub struct LotteryTypeFormat5Choice {
#[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<GenericIdentification47>,
}
impl Validate for LotteryTypeFormat5Choice {}
#[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.002.16")]
pub struct MarketIdentification4Choice {
#[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<RestrictedFINXMax30Text>,
}
impl Validate for MarketIdentification4Choice {}
#[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 Max30DecimalNumber (pub String);
crate::simple_type!(Max30DecimalNumber);
impl Validate for Max30DecimalNumber {}
#[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 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.002.16")]
pub struct NameAndAddress12 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: RestrictedFINXMax140Text,
}
impl Validate for NameAndAddress12 {}
#[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.002.16")]
pub struct NetDividendRateFormat43Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "AmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "AmtAndRateSts"))]
pub amt_and_rate_sts: Option<AmountAndRateStatus2>,
#[yaserde(rename = "RateTpAndAmtAndRateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndAmtAndRateSts"))]
pub rate_tp_and_amt_and_rate_sts: Option<RateTypeAndAmountAndStatus60>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for NetDividendRateFormat43Choice {}
#[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.002.16")]
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.002.16")]
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.002.16")]
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.002.16")]
pub enum NonEligibleProceedsIndicator2Code {
#[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,
#[yaserde(rename = "NELS")]
#[cfg_attr(feature = "serde", serde(rename = "NELS"))]
Nels,
__Unknown__(String),
}
impl Default for NonEligibleProceedsIndicator2Code {
fn default() -> NonEligibleProceedsIndicator2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for NonEligibleProceedsIndicator2Code {}
#[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.002.16")]
pub struct NonEligibleProceedsIndicator4Choice {
#[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<GenericIdentification47>,
}
impl Validate for NonEligibleProceedsIndicator4Choice {}
#[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.002.16")]
pub struct NonEligibleProceedsIndicator6Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<NonEligibleProceedsIndicator2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for NonEligibleProceedsIndicator6Choice {}
#[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.002.16")]
pub enum OfferType5Code {
#[yaserde(rename = "DISS")]
#[cfg_attr(feature = "serde", serde(rename = "DISS"))]
Diss,
#[yaserde(rename = "NDIS")]
#[cfg_attr(feature = "serde", serde(rename = "NDIS"))]
Ndis,
#[yaserde(rename = "FINL")]
#[cfg_attr(feature = "serde", serde(rename = "FINL"))]
Finl,
#[yaserde(rename = "FCFS")]
#[cfg_attr(feature = "serde", serde(rename = "FCFS"))]
Fcfs,
#[yaserde(rename = "PART")]
#[cfg_attr(feature = "serde", serde(rename = "PART"))]
Part,
#[yaserde(rename = "ERUN")]
#[cfg_attr(feature = "serde", serde(rename = "ERUN"))]
Erun,
#[yaserde(rename = "SQUE")]
#[cfg_attr(feature = "serde", serde(rename = "SQUE"))]
Sque,
#[yaserde(rename = "ACPR")]
#[cfg_attr(feature = "serde", serde(rename = "ACPR"))]
Acpr,
__Unknown__(String),
}
impl Default for OfferType5Code {
fn default() -> OfferType5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OfferType5Code {}
#[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.002.16")]
pub struct OfferTypeFormat15Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OfferType5Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for OfferTypeFormat15Choice {}
#[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.002.16")]
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.002.16")]
pub struct OptionAvailabilityStatus4Choice {
#[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<GenericIdentification47>,
}
impl Validate for OptionAvailabilityStatus4Choice {}
#[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.002.16")]
pub enum OptionFeatures13Code {
#[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,
#[yaserde(rename = "RGRS")]
#[cfg_attr(feature = "serde", serde(rename = "RGRS"))]
Rgrs,
#[yaserde(rename = "RNET")]
#[cfg_attr(feature = "serde", serde(rename = "RNET"))]
Rnet,
__Unknown__(String),
}
impl Default for OptionFeatures13Code {
fn default() -> OptionFeatures13Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionFeatures13Code {}
#[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.002.16")]
pub struct OptionFeaturesFormat31Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OptionFeatures13Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for OptionFeaturesFormat31Choice {}
#[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.002.16")]
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.002.16")]
pub struct OptionStyle9Choice {
#[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<GenericIdentification47>,
}
impl Validate for OptionStyle9Choice {}
#[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.002.16")]
pub struct OriginalAndCurrentQuantities4 {
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: RestrictedFINImpliedCurrencyAndAmount,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: RestrictedFINImpliedCurrencyAndAmount,
}
impl Validate for OriginalAndCurrentQuantities4 {}
#[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.002.16")]
pub struct OriginalAndCurrentQuantities7 {
#[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: RestrictedFINImpliedCurrencyAndAmount,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: RestrictedFINImpliedCurrencyAndAmount,
}
impl Validate for OriginalAndCurrentQuantities7 {}
#[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.002.16")]
pub struct OtherIdentification2 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax31Text,
#[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: IdentificationSource4Choice,
}
impl Validate for OtherIdentification2 {}
#[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.002.16")]
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.002.16")]
pub struct PartyIdentification136Choice {
#[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<GenericIdentification84>,
}
impl Validate for PartyIdentification136Choice {}
#[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.002.16")]
pub struct PartyIdentification137Choice {
#[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<GenericIdentification84>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress12>,
}
impl Validate for PartyIdentification137Choice {}
#[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.002.16")]
pub struct PartyIdentification151Choice {
#[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<GenericIdentification84>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress12>,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Option<Leiidentifier>,
}
impl Validate for PartyIdentification151Choice {}
#[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.002.16")]
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)]
pub struct Percentage14Rate (pub String);
crate::simple_type!(Percentage14Rate);
impl Validate for Percentage14Rate {}
#[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.002.16")]
pub struct PercentagePrice2 {
#[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: Percentage14Rate,
}
impl Validate for PercentagePrice2 {}
#[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.002.16")]
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.002.16")]
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.002.16")]
pub struct PriceDetails42 {
#[yaserde(rename = "GncCshPricPdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricPdPerPdct"))]
pub gnc_csh_pric_pd_per_pdct: PriceFormat89Choice,
#[yaserde(rename = "GncCshPricRcvdPerPdct")]
#[cfg_attr(feature = "serde", serde(rename = "GncCshPricRcvdPerPdct"))]
pub gnc_csh_pric_rcvd_per_pdct: PriceFormat90Choice,
#[yaserde(rename = "CshInLieuOfShrPric")]
#[cfg_attr(feature = "serde", serde(rename = "CshInLieuOfShrPric"))]
pub csh_in_lieu_of_shr_pric: PriceFormat88Choice,
}
impl Validate for PriceDetails42 {}
#[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.002.16")]
pub struct PriceFormat58Choice {
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice4>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType10Code>,
}
impl Validate for PriceFormat58Choice {}
#[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.002.16")]
pub struct PriceFormat62Choice {
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice7>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType10Code>,
}
impl Validate for PriceFormat62Choice {}
#[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.002.16")]
pub struct PriceFormat88Choice {
#[yaserde(rename = "PctgPric")]
#[cfg_attr(feature = "serde", serde(rename = "PctgPric"))]
pub pctg_pric: Option<PercentagePrice2>,
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice5>,
#[yaserde(rename = "NotSpcfdPric")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdPric"))]
pub not_spcfd_pric: Option<PriceValueType10Code>,
}
impl Validate for PriceFormat88Choice {}
#[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.002.16")]
pub struct PriceFormat89Choice {
#[yaserde(rename = "PctgPric")]
#[cfg_attr(feature = "serde", serde(rename = "PctgPric"))]
pub pctg_pric: Option<PercentagePrice2>,
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice5>,
#[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<RestrictedFINDecimalNumber>,
}
impl Validate for PriceFormat89Choice {}
#[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.002.16")]
pub struct PriceFormat90Choice {
#[yaserde(rename = "PctgPric")]
#[cfg_attr(feature = "serde", serde(rename = "PctgPric"))]
pub pctg_pric: Option<PercentagePrice2>,
#[yaserde(rename = "AmtPric")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPric"))]
pub amt_pric: Option<AmountPrice5>,
#[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<AmountPricePerFinancialInstrumentQuantity11>,
#[yaserde(rename = "AmtPricPerAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AmtPricPerAmt"))]
pub amt_pric_per_amt: Option<AmountPricePerAmount3>,
#[yaserde(rename = "IndxPts")]
#[cfg_attr(feature = "serde", serde(rename = "IndxPts"))]
pub indx_pts: Option<RestrictedFINDecimalNumber>,
}
impl Validate for PriceFormat90Choice {}
#[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.002.16")]
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.002.16")]
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.002.16")]
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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.002.16")]
pub struct ProcessingPosition10Choice {
#[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<GenericIdentification47>,
}
impl Validate for ProcessingPosition10Choice {}
#[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.002.16")]
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.002.16")]
pub struct ProprietaryQuantity10 {
#[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: RestrictedFINDecimalNumber,
#[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: Max4AlphaNumericText,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max4AlphaNumericText,
}
impl Validate for ProprietaryQuantity10 {}
#[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.002.16")]
pub struct ProprietaryQuantity9 {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: RestrictedFINDecimalNumber,
#[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: Max4AlphaNumericText,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max4AlphaNumericText,
}
impl Validate for ProprietaryQuantity9 {}
#[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.002.16")]
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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.002.16")]
pub struct Quantity53Choice {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: Option<FinancialInstrumentQuantity36Choice>,
#[yaserde(rename = "PrtryQty")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryQty"))]
pub prtry_qty: Option<ProprietaryQuantity9>,
}
impl Validate for Quantity53Choice {}
#[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.002.16")]
pub struct Quantity54Choice {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: Option<FinancialInstrumentQuantity36Choice>,
#[yaserde(rename = "OrgnlAndCurFace")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlAndCurFace"))]
pub orgnl_and_cur_face: Option<OriginalAndCurrentQuantities4>,
}
impl Validate for Quantity54Choice {}
#[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.002.16")]
pub struct Quantity57Choice {
#[yaserde(rename = "OrgnlAndCurFaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlAndCurFaceAmt"))]
pub orgnl_and_cur_face_amt: Option<OriginalAndCurrentQuantities7>,
#[yaserde(rename = "SgndQty")]
#[cfg_attr(feature = "serde", serde(rename = "SgndQty"))]
pub sgnd_qty: Option<SignedQuantityFormat13>,
}
impl Validate for Quantity57Choice {}
#[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.002.16")]
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.002.16")]
pub struct Quantity80Choice {
#[yaserde(rename = "QtyChc")]
#[cfg_attr(feature = "serde", serde(rename = "QtyChc"))]
pub qty_chc: Option<Quantity57Choice>,
#[yaserde(rename = "PrtryQty")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryQty"))]
pub prtry_qty: Option<ProprietaryQuantity10>,
}
impl Validate for Quantity80Choice {}
#[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.002.16")]
pub struct QuantityToQuantityRatio2 {
#[yaserde(rename = "Qty1")]
#[cfg_attr(feature = "serde", serde(rename = "Qty1"))]
pub qty_1: RestrictedFINDecimalNumber,
#[yaserde(rename = "Qty2")]
#[cfg_attr(feature = "serde", serde(rename = "Qty2"))]
pub qty_2: RestrictedFINDecimalNumber,
}
impl Validate for QuantityToQuantityRatio2 {}
#[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.002.16")]
pub struct Rate46 {
#[yaserde(rename = "AddtlTax")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTax"))]
pub addtl_tax: RateAndAmountFormat69Choice,
#[yaserde(rename = "GrssDstrbtnRate")]
#[cfg_attr(feature = "serde", serde(rename = "GrssDstrbtnRate"))]
pub grss_dstrbtn_rate: Vec<GrossDividendRateFormat41Choice>,
#[yaserde(rename = "GrssIntrstRateUsdForPmt")]
#[cfg_attr(feature = "serde", serde(rename = "GrssIntrstRateUsdForPmt"))]
pub grss_intrst_rate_usd_for_pmt: Vec<InterestRateUsedForPaymentFormat18Choice>,
#[yaserde(rename = "WhldgTaxRate")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTaxRate"))]
pub whldg_tax_rate: Vec<RateAndAmountFormat70Choice>,
#[yaserde(rename = "ScndLvlTax")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLvlTax"))]
pub scnd_lvl_tax: Vec<RateAndAmountFormat70Choice>,
#[yaserde(rename = "ChrgsFees")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsFees"))]
pub chrgs_fees: RateAndAmountFormat69Choice,
#[yaserde(rename = "EarlySlctnFeeRate")]
#[cfg_attr(feature = "serde", serde(rename = "EarlySlctnFeeRate"))]
pub early_slctn_fee_rate: SolicitationFeeRateFormat14Choice,
#[yaserde(rename = "FsclStmp")]
#[cfg_attr(feature = "serde", serde(rename = "FsclStmp"))]
pub fscl_stmp: RateFormat24Choice,
#[yaserde(rename = "ThrdPtyIncntivRate")]
#[cfg_attr(feature = "serde", serde(rename = "ThrdPtyIncntivRate"))]
pub thrd_pty_incntiv_rate: RateFormat29Choice,
#[yaserde(rename = "NetDstrbtnRate")]
#[cfg_attr(feature = "serde", serde(rename = "NetDstrbtnRate"))]
pub net_dstrbtn_rate: Vec<NetDividendRateFormat43Choice>,
#[yaserde(rename = "AplblRate")]
#[cfg_attr(feature = "serde", serde(rename = "AplblRate"))]
pub aplbl_rate: RateFormat24Choice,
#[yaserde(rename = "SlctnFeeRate")]
#[cfg_attr(feature = "serde", serde(rename = "SlctnFeeRate"))]
pub slctn_fee_rate: SolicitationFeeRateFormat14Choice,
#[yaserde(rename = "TaxCdtRate")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCdtRate"))]
pub tax_cdt_rate: RateFormat29Choice,
#[yaserde(rename = "TaxOnIncm")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnIncm"))]
pub tax_on_incm: RateAndAmountFormat69Choice,
#[yaserde(rename = "TaxOnPrfts")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnPrfts"))]
pub tax_on_prfts: RateFormat24Choice,
#[yaserde(rename = "TaxRclmRate")]
#[cfg_attr(feature = "serde", serde(rename = "TaxRclmRate"))]
pub tax_rclm_rate: RateFormat24Choice,
#[yaserde(rename = "EqulstnRate")]
#[cfg_attr(feature = "serde", serde(rename = "EqulstnRate"))]
pub equlstn_rate: RateAndAmountFormat48Choice,
#[yaserde(rename = "DmdRate")]
#[cfg_attr(feature = "serde", serde(rename = "DmdRate"))]
pub dmd_rate: Vec<RateAndAmountFormat71Choice>,
}
impl Validate for Rate46 {}
#[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.002.16")]
pub struct RateAndAmountFormat48Choice {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for RateAndAmountFormat48Choice {}
#[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.002.16")]
pub struct RateAndAmountFormat69Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<Percentage14Rate>,
#[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<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
}
impl Validate for RateAndAmountFormat69Choice {}
#[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.002.16")]
pub struct RateAndAmountFormat70Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<Percentage14Rate>,
#[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<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "RateTpAndRate")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndRate"))]
pub rate_tp_and_rate: Option<RateTypeAndPercentageRate18>,
}
impl Validate for RateAndAmountFormat70Choice {}
#[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.002.16")]
pub struct RateAndAmountFormat71Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<Percentage14Rate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[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<RateTypeAndAmountAndStatus54>,
#[yaserde(rename = "RateTpAndRate")]
#[cfg_attr(feature = "serde", serde(rename = "RateTpAndRate"))]
pub rate_tp_and_rate: Option<RateTypeAndPercentageRate19>,
}
impl Validate for RateAndAmountFormat71Choice {}
#[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.002.16")]
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.002.16")]
pub struct RateFormat24Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<Percentage14Rate>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateType5Code>,
}
impl Validate for RateFormat24Choice {}
#[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.002.16")]
pub struct RateFormat29Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<Percentage14Rate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for RateFormat29Choice {}
#[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.002.16")]
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.002.16")]
pub struct RateStatus4Choice {
#[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<GenericIdentification47>,
}
impl Validate for RateStatus4Choice {}
#[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.002.16")]
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.002.16")]
pub struct RateType45Choice {
#[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<GenericIdentification47>,
}
impl Validate for RateType45Choice {}
#[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.002.16")]
pub struct RateType46Choice {
#[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<GenericIdentification47>,
}
impl Validate for RateType46Choice {}
#[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.002.16")]
pub struct RateType47Choice {
#[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<GenericIdentification47>,
}
impl Validate for RateType47Choice {}
#[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.002.16")]
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.002.16")]
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.002.16")]
pub struct RateType80Choice {
#[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<GenericIdentification47>,
}
impl Validate for RateType80Choice {}
#[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.002.16")]
pub struct RateType81Choice {
#[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<GenericIdentification47>,
}
impl Validate for RateType81Choice {}
#[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.002.16")]
pub struct RateTypeAndAmountAndStatus32 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType45Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus4Choice,
}
impl Validate for RateTypeAndAmountAndStatus32 {}
#[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.002.16")]
pub struct RateTypeAndAmountAndStatus33 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType47Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus4Choice,
}
impl Validate for RateTypeAndAmountAndStatus33 {}
#[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.002.16")]
pub struct RateTypeAndAmountAndStatus54 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: DeemedRateType2Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus4Choice,
}
impl Validate for RateTypeAndAmountAndStatus54 {}
#[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.002.16")]
pub struct RateTypeAndAmountAndStatus59 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType80Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus4Choice,
}
impl Validate for RateTypeAndAmountAndStatus59 {}
#[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.002.16")]
pub struct RateTypeAndAmountAndStatus60 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType81Choice,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAnd13DecimalAmount,
#[yaserde(rename = "RateSts")]
#[cfg_attr(feature = "serde", serde(rename = "RateSts"))]
pub rate_sts: RateStatus4Choice,
}
impl Validate for RateTypeAndAmountAndStatus60 {}
#[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.002.16")]
pub struct RateTypeAndPercentageRate18 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: RateType46Choice,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Percentage14Rate,
}
impl Validate for RateTypeAndPercentageRate18 {}
#[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.002.16")]
pub struct RateTypeAndPercentageRate19 {
#[yaserde(rename = "RateTp")]
#[cfg_attr(feature = "serde", serde(rename = "RateTp"))]
pub rate_tp: DeemedRateType2Choice,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Percentage14Rate,
}
impl Validate for RateTypeAndPercentageRate19 {}
#[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.002.16")]
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.002.16")]
pub struct RatioFormat23Choice {
#[yaserde(rename = "QtyToQty")]
#[cfg_attr(feature = "serde", serde(rename = "QtyToQty"))]
pub qty_to_qty: Option<QuantityToQuantityRatio2>,
#[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<AmountToAmountRatio3>,
}
impl Validate for RatioFormat23Choice {}
#[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.002.16")]
pub struct RatioFormat24Choice {
#[yaserde(rename = "QtyToQty")]
#[cfg_attr(feature = "serde", serde(rename = "QtyToQty"))]
pub qty_to_qty: Option<QuantityToQuantityRatio2>,
#[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<AmountToAmountRatio3>,
#[yaserde(rename = "AmtToQty")]
#[cfg_attr(feature = "serde", serde(rename = "AmtToQty"))]
pub amt_to_qty: Option<AmountAndQuantityRatio5>,
#[yaserde(rename = "QtyToAmt")]
#[cfg_attr(feature = "serde", serde(rename = "QtyToAmt"))]
pub qty_to_amt: Option<AmountAndQuantityRatio5>,
}
impl Validate for RatioFormat24Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINActiveCurrencyAnd13DecimalAmountSimpleType (pub String);
crate::simple_type!(RestrictedFINActiveCurrencyAnd13DecimalAmountSimpleType);
impl Validate for RestrictedFINActiveCurrencyAnd13DecimalAmountSimpleType {
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.002.16")]
pub struct RestrictedFINActiveCurrencyAnd13DecimalAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
}
impl Validate for RestrictedFINActiveCurrencyAnd13DecimalAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINActiveCurrencyAndAmountSimpleType (pub String);
crate::simple_type!(RestrictedFINActiveCurrencyAndAmountSimpleType);
impl Validate for RestrictedFINActiveCurrencyAndAmountSimpleType {
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.002.16")]
pub struct RestrictedFINActiveCurrencyAndAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
}
impl Validate for RestrictedFINActiveCurrencyAndAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINDecimalNumber (pub String);
crate::simple_type!(RestrictedFINDecimalNumber);
impl Validate for RestrictedFINDecimalNumber {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINExact2Text (pub String);
crate::simple_type!(RestrictedFINExact2Text);
impl Validate for RestrictedFINExact2Text {
fn validate(&self) -> Result<(), String> {
if self.0.len() != 2 {
return Err(format!("Length validation error. \nExpected: 0 length == 2 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINImpliedCurrencyAndAmount (pub String);
crate::simple_type!(RestrictedFINImpliedCurrencyAndAmount);
impl Validate for RestrictedFINImpliedCurrencyAndAmount {
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)]
pub struct RestrictedFINX2Max34Text (pub String);
crate::simple_type!(RestrictedFINX2Max34Text);
impl Validate for RestrictedFINX2Max34Text {
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 RestrictedFINXMax140Text (pub String);
crate::simple_type!(RestrictedFINXMax140Text);
impl Validate for RestrictedFINXMax140Text {
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 RestrictedFINXMax16Text (pub String);
crate::simple_type!(RestrictedFINXMax16Text);
impl Validate for RestrictedFINXMax16Text {
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 RestrictedFINXMax256Text (pub String);
crate::simple_type!(RestrictedFINXMax256Text);
impl Validate for RestrictedFINXMax256Text {
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 RestrictedFINXMax30Text (pub String);
crate::simple_type!(RestrictedFINXMax30Text);
impl Validate for RestrictedFINXMax30Text {
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() > 30 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 30 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINXMax31Text (pub String);
crate::simple_type!(RestrictedFINXMax31Text);
impl Validate for RestrictedFINXMax31Text {
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() > 31 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 31 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINXMax34Text (pub String);
crate::simple_type!(RestrictedFINXMax34Text);
impl Validate for RestrictedFINXMax34Text {
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 RestrictedFINXMax350Text (pub String);
crate::simple_type!(RestrictedFINXMax350Text);
impl Validate for RestrictedFINXMax350Text {
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 RestrictedFINXMax35Text (pub String);
crate::simple_type!(RestrictedFINXMax35Text);
impl Validate for RestrictedFINXMax35Text {
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:seev.035.002.16")]
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.002.16")]
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.002.16")]
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.002.16")]
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.002.16")]
pub struct SafekeepingPlaceFormat52Choice {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Option<SafekeepingPlaceTypeAndText9>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
#[yaserde(rename = "DgtlLdgrId")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlLdgrId"))]
pub dgtl_ldgr_id: Option<Dti2024Identifier>,
#[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<GenericIdentification85>,
}
impl Validate for SafekeepingPlaceFormat52Choice {}
#[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.002.16")]
pub struct SafekeepingPlaceFormat53Choice {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Option<SafekeepingPlaceTypeAndText15>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
#[yaserde(rename = "DgtlLdgrId")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlLdgrId"))]
pub dgtl_ldgr_id: Option<Dti2024Identifier>,
#[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<GenericIdentification85>,
}
impl Validate for SafekeepingPlaceFormat53Choice {}
#[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.002.16")]
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.002.16")]
pub struct SafekeepingPlaceTypeAndText15 {
#[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: RestrictedFINXMax30Text,
}
impl Validate for SafekeepingPlaceTypeAndText15 {}
#[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.002.16")]
pub struct SafekeepingPlaceTypeAndText9 {
#[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: RestrictedFINXMax30Text,
}
impl Validate for SafekeepingPlaceTypeAndText9 {}
#[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.002.16")]
pub struct SecuritiesOption116 {
#[yaserde(rename = "SctyDtls")]
#[cfg_attr(feature = "serde", serde(rename = "SctyDtls"))]
pub scty_dtls: FinancialInstrumentAttributes135,
#[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: TemporaryFinancialInstrumentIndicator4Choice,
#[yaserde(rename = "NonElgblPrcdsInd")]
#[cfg_attr(feature = "serde", serde(rename = "NonElgblPrcdsInd"))]
pub non_elgbl_prcds_ind: NonEligibleProceedsIndicator6Choice,
#[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: GenericIdentification47,
#[yaserde(rename = "OthrIncmTp")]
#[cfg_attr(feature = "serde", serde(rename = "OthrIncmTp"))]
pub othr_incm_tp: Vec<GenericIdentification47>,
#[yaserde(rename = "XmptnTp")]
#[cfg_attr(feature = "serde", serde(rename = "XmptnTp"))]
pub xmptn_tp: Vec<GenericIdentification47>,
#[yaserde(rename = "EntitldQty")]
#[cfg_attr(feature = "serde", serde(rename = "EntitldQty"))]
pub entitld_qty: Quantity54Choice,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafekeepingPlaceFormat53Choice,
#[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: FractionDispositionType31Choice,
#[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: SecurityDate23,
#[yaserde(rename = "RateDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RateDtls"))]
pub rate_dtls: CorporateActionRate134,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: CorporateActionPrice95,
#[yaserde(rename = "AmtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "AmtDtls"))]
pub amt_dtls: CorporateActionAmounts61,
}
impl Validate for SecuritiesOption116 {}
#[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.002.16")]
pub struct SecuritiesOption84 {
#[yaserde(rename = "MaxQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MaxQtyToInst"))]
pub max_qty_to_inst: FinancialInstrumentQuantity44Choice,
#[yaserde(rename = "MinQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinQtyToInst"))]
pub min_qty_to_inst: FinancialInstrumentQuantity44Choice,
#[yaserde(rename = "MinMltplQtyToInst")]
#[cfg_attr(feature = "serde", serde(rename = "MinMltplQtyToInst"))]
pub min_mltpl_qty_to_inst: FinancialInstrumentQuantity43Choice,
#[yaserde(rename = "NewBrdLotQty")]
#[cfg_attr(feature = "serde", serde(rename = "NewBrdLotQty"))]
pub new_brd_lot_qty: FinancialInstrumentQuantity43Choice,
#[yaserde(rename = "NewDnmtnQty")]
#[cfg_attr(feature = "serde", serde(rename = "NewDnmtnQty"))]
pub new_dnmtn_qty: FinancialInstrumentQuantity43Choice,
#[yaserde(rename = "FrntEndOddLotQty")]
#[cfg_attr(feature = "serde", serde(rename = "FrntEndOddLotQty"))]
pub frnt_end_odd_lot_qty: FinancialInstrumentQuantity43Choice,
#[yaserde(rename = "BckEndOddLotQty")]
#[cfg_attr(feature = "serde", serde(rename = "BckEndOddLotQty"))]
pub bck_end_odd_lot_qty: FinancialInstrumentQuantity43Choice,
}
impl Validate for SecuritiesOption84 {}
#[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.002.16")]
pub struct SecurityDate23 {
#[yaserde(rename = "PmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "PmtDt"))]
pub pmt_dt: DateFormat41Choice,
#[yaserde(rename = "AvlblDt")]
#[cfg_attr(feature = "serde", serde(rename = "AvlblDt"))]
pub avlbl_dt: DateFormat41Choice,
#[yaserde(rename = "DvddRnkgDt")]
#[cfg_attr(feature = "serde", serde(rename = "DvddRnkgDt"))]
pub dvdd_rnkg_dt: DateFormat41Choice,
#[yaserde(rename = "EarlstPmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "EarlstPmtDt"))]
pub earlst_pmt_dt: DateFormat41Choice,
#[yaserde(rename = "PrpssDt")]
#[cfg_attr(feature = "serde", serde(rename = "PrpssDt"))]
pub prpss_dt: DateFormat41Choice,
#[yaserde(rename = "LastTradgDt")]
#[cfg_attr(feature = "serde", serde(rename = "LastTradgDt"))]
pub last_tradg_dt: DateFormat41Choice,
}
impl Validate for SecurityDate23 {}
#[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.002.16")]
pub struct SecurityIdentification20 {
#[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<OtherIdentification2>,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: RestrictedFINXMax140Text,
}
impl Validate for SecurityIdentification20 {}
#[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.002.16")]
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.002.16")]
pub struct SignedQuantityFormat12 {
#[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: Quantity53Choice,
}
impl Validate for SignedQuantityFormat12 {}
#[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.002.16")]
pub struct SignedQuantityFormat13 {
#[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: FinancialInstrumentQuantity36Choice,
}
impl Validate for SignedQuantityFormat13 {}
#[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.002.16")]
pub struct SolicitationFeeRateFormat14Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<Percentage14Rate>,
#[yaserde(rename = "AmtToQty")]
#[cfg_attr(feature = "serde", serde(rename = "AmtToQty"))]
pub amt_to_qty: Option<AmountAndQuantityRatio5>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "NotSpcfdRate")]
#[cfg_attr(feature = "serde", serde(rename = "NotSpcfdRate"))]
pub not_spcfd_rate: Option<RateValueType7Code>,
}
impl Validate for SolicitationFeeRateFormat14Choice {}
#[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.002.16")]
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.002.16")]
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.002.16")]
pub struct TemporaryFinancialInstrumentIndicator4Choice {
#[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<GenericIdentification47>,
}
impl Validate for TemporaryFinancialInstrumentIndicator4Choice {}
#[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.002.16")]
pub struct TotalEligibleBalanceFormat11 {
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: Quantity80Choice,
#[yaserde(rename = "FullPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "FullPrdUnits"))]
pub full_prd_units: SignedQuantityFormat13,
#[yaserde(rename = "PartWayPrdUnits")]
#[cfg_attr(feature = "serde", serde(rename = "PartWayPrdUnits"))]
pub part_way_prd_units: SignedQuantityFormat13,
}
impl Validate for TotalEligibleBalanceFormat11 {}
#[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.002.16")]
pub struct UpdatedAdditionalInformation22 {
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: RestrictedFINXMax350Text,
}
impl Validate for UpdatedAdditionalInformation22 {}
#[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.002.16")]
pub struct UpdatedAdditionalInformation23 {
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: Vec<RestrictedFINXMax350Text>,
}
impl Validate for UpdatedAdditionalInformation23 {}
#[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.002.16")]
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 = "002";
const VERSION: &'static str = "16";
const MESSAGE_NAME: &'static str = "seev.035.002.16";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:seev.035.002.16";
}