#![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)]
pub struct ActiveCurrencyAndAmountSimpleType (pub String);
crate::simple_type!(ActiveCurrencyAndAmountSimpleType);
impl Validate for ActiveCurrencyAndAmountSimpleType {
fn validate(&self) -> Result<(), String> {
if self.0 < "0".parse::<String>().unwrap() {
return Err(format!("MinInclusive validation error: invalid value of 0! \nExpected: 0 >= 0.\nActual: 0 == {}", self.0));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct ActiveCurrencyAndAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
}
impl Validate for ActiveCurrencyAndAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveCurrencyCode (pub String);
crate::simple_type!(ActiveCurrencyCode);
impl Validate for ActiveCurrencyCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveOrHistoricCurrencyAndAmountSimpleType (pub String);
crate::simple_type!(ActiveOrHistoricCurrencyAndAmountSimpleType);
impl Validate for ActiveOrHistoricCurrencyAndAmountSimpleType {
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:sese.023.002.11")]
pub struct ActiveOrHistoricCurrencyAndAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveOrHistoricCurrencyCode,
}
impl Validate for ActiveOrHistoricCurrencyAndAmount {}
#[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:sese.023.002.11")]
pub enum AffirmationStatus1Code {
#[yaserde(rename = "AFFI")]
#[cfg_attr(feature = "serde", serde(rename = "AFFI"))]
Affi,
#[yaserde(rename = "NAFI")]
#[cfg_attr(feature = "serde", serde(rename = "NAFI"))]
Nafi,
__Unknown__(String),
}
impl Default for AffirmationStatus1Code {
fn default() -> AffirmationStatus1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AffirmationStatus1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct AffirmationStatus9Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<AffirmationStatus1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for AffirmationStatus9Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct AlternatePartyIdentification9 {
#[yaserde(rename = "IdTp")]
#[cfg_attr(feature = "serde", serde(rename = "IdTp"))]
pub id_tp: IdentificationType44Choice,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: CountryCode,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: RestrictedFINXMax30Text,
}
impl Validate for AlternatePartyIdentification9 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct AmountAndDirection44 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveOrHistoricCurrencyAndAmount,
#[yaserde(rename = "CdtDbtInd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbtInd"))]
pub cdt_dbt_ind: CreditDebitCode,
#[yaserde(rename = "OrgnlCcyAndOrdrdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlCcyAndOrdrdAmt"))]
pub orgnl_ccy_and_ordrd_amt: ActiveOrHistoricCurrencyAndAmount,
#[yaserde(rename = "FXDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FXDtls"))]
pub fx_dtls: ForeignExchangeTerms23,
}
impl Validate for AmountAndDirection44 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct AmountAndDirection58 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveOrHistoricCurrencyAndAmount,
#[yaserde(rename = "CdtDbtInd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbtInd"))]
pub cdt_dbt_ind: CreditDebitCode,
#[yaserde(rename = "OrgnlCcyAndOrdrdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlCcyAndOrdrdAmt"))]
pub orgnl_ccy_and_ordrd_amt: RestrictedFINActiveOrHistoricCurrencyAndAmount,
#[yaserde(rename = "FXDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FXDtls"))]
pub fx_dtls: ForeignExchangeTerms27,
}
impl Validate for AmountAndDirection58 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct AmountAndDirection96 {
#[yaserde(rename = "AcrdIntrstInd")]
#[cfg_attr(feature = "serde", serde(rename = "AcrdIntrstInd"))]
pub acrd_intrst_ind: YesNoIndicator,
#[yaserde(rename = "StmpDtyInd")]
#[cfg_attr(feature = "serde", serde(rename = "StmpDtyInd"))]
pub stmp_dty_ind: YesNoIndicator,
#[yaserde(rename = "BrkrgAmtInd")]
#[cfg_attr(feature = "serde", serde(rename = "BrkrgAmtInd"))]
pub brkrg_amt_ind: YesNoIndicator,
#[yaserde(rename = "RsrchFeeInd")]
#[cfg_attr(feature = "serde", serde(rename = "RsrchFeeInd"))]
pub rsrch_fee_ind: YesNoIndicator,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: RestrictedFINActiveCurrencyAndAmount,
#[yaserde(rename = "CdtDbtInd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbtInd"))]
pub cdt_dbt_ind: CreditDebitCode,
#[yaserde(rename = "OrgnlCcyAndOrdrdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlCcyAndOrdrdAmt"))]
pub orgnl_ccy_and_ordrd_amt: RestrictedFINActiveOrHistoricCurrencyAndAmount,
#[yaserde(rename = "FXDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FXDtls"))]
pub fx_dtls: ForeignExchangeTerms27,
#[yaserde(rename = "ValDt")]
#[cfg_attr(feature = "serde", serde(rename = "ValDt"))]
pub val_dt: DateAndDateTime2Choice,
}
impl Validate for AmountAndDirection96 {}
#[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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub enum AutoBorrowing1Code {
#[yaserde(rename = "LAMI")]
#[cfg_attr(feature = "serde", serde(rename = "LAMI"))]
Lami,
#[yaserde(rename = "NBOR")]
#[cfg_attr(feature = "serde", serde(rename = "NBOR"))]
Nbor,
#[yaserde(rename = "YBOR")]
#[cfg_attr(feature = "serde", serde(rename = "YBOR"))]
Ybor,
__Unknown__(String),
}
impl Default for AutoBorrowing1Code {
fn default() -> AutoBorrowing1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AutoBorrowing1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct AutomaticBorrowing8Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<AutoBorrowing1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for AutomaticBorrowing8Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Bicfidec2014Identifier (pub String);
crate::simple_type!(Bicfidec2014Identifier);
impl Validate for Bicfidec2014Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct BaseOneRate (pub String);
crate::simple_type!(BaseOneRate);
impl Validate for BaseOneRate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct BeneficialOwnership5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for BeneficialOwnership5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct BlockChainAddressWallet7 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax140Text,
#[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: RestrictedFINXMax70Text,
}
impl Validate for BlockChainAddressWallet7 {}
#[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:sese.023.002.11")]
pub enum BlockTrade1Code {
#[yaserde(rename = "BLPA")]
#[cfg_attr(feature = "serde", serde(rename = "BLPA"))]
Blpa,
#[yaserde(rename = "BLCH")]
#[cfg_attr(feature = "serde", serde(rename = "BLCH"))]
Blch,
__Unknown__(String),
}
impl Default for BlockTrade1Code {
fn default() -> BlockTrade1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for BlockTrade1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct BlockTrade5Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<BlockTrade1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for BlockTrade5Choice {}
#[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:sese.023.002.11")]
pub struct CashAccountIdentification6Choice {
#[yaserde(rename = "IBAN")]
#[cfg_attr(feature = "serde", serde(rename = "IBAN"))]
pub iban: Option<Iban2007Identifier>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<RestrictedFINX2Max34Text>,
}
impl Validate for CashAccountIdentification6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct CashParties38 {
#[yaserde(rename = "Dbtr")]
#[cfg_attr(feature = "serde", serde(rename = "Dbtr"))]
pub dbtr: PartyIdentificationAndAccount177,
#[yaserde(rename = "DbtrAgt")]
#[cfg_attr(feature = "serde", serde(rename = "DbtrAgt"))]
pub dbtr_agt: PartyIdentificationAndAccount178,
#[yaserde(rename = "Cdtr")]
#[cfg_attr(feature = "serde", serde(rename = "Cdtr"))]
pub cdtr: PartyIdentificationAndAccount177,
#[yaserde(rename = "CdtrAgt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtrAgt"))]
pub cdtr_agt: PartyIdentificationAndAccount178,
#[yaserde(rename = "Intrmy")]
#[cfg_attr(feature = "serde", serde(rename = "Intrmy"))]
pub intrmy: PartyIdentificationAndAccount178,
}
impl Validate for CashParties38 {}
#[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:sese.023.002.11")]
pub enum CashSettlementSystem2Code {
#[yaserde(rename = "GROS")]
#[cfg_attr(feature = "serde", serde(rename = "GROS"))]
Gros,
#[yaserde(rename = "NETS")]
#[cfg_attr(feature = "serde", serde(rename = "NETS"))]
Nets,
__Unknown__(String),
}
impl Default for CashSettlementSystem2Code {
fn default() -> CashSettlementSystem2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CashSettlementSystem2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct CashSettlementSystem5Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CashSettlementSystem2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for CashSettlementSystem5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct CentralCounterPartyEligibility5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for CentralCounterPartyEligibility5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
pub struct Counterparty16Choice {
#[yaserde(rename = "Sellr")]
#[cfg_attr(feature = "serde", serde(rename = "Sellr"))]
pub sellr: Option<PartyIdentificationAndAccount206>,
#[yaserde(rename = "Buyr")]
#[cfg_attr(feature = "serde", serde(rename = "Buyr"))]
pub buyr: Option<PartyIdentificationAndAccount206>,
}
impl Validate for Counterparty16Choice {}
#[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:sese.023.002.11")]
pub enum CreditDebitCode {
#[yaserde(rename = "CRDT")]
#[cfg_attr(feature = "serde", serde(rename = "CRDT"))]
Crdt,
#[yaserde(rename = "DBIT")]
#[cfg_attr(feature = "serde", serde(rename = "DBIT"))]
Dbit,
__Unknown__(String),
}
impl Default for CreditDebitCode {
fn default() -> CreditDebitCode {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CreditDebitCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct CurrencyToBuyOrSell1Choice {
#[yaserde(rename = "CcyToBuy")]
#[cfg_attr(feature = "serde", serde(rename = "CcyToBuy"))]
pub ccy_to_buy: Option<ActiveCurrencyCode>,
#[yaserde(rename = "CcyToSell")]
#[cfg_attr(feature = "serde", serde(rename = "CcyToSell"))]
pub ccy_to_sell: Option<ActiveCurrencyCode>,
}
impl Validate for CurrencyToBuyOrSell1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub enum DateType3Code {
#[yaserde(rename = "VARI")]
#[cfg_attr(feature = "serde", serde(rename = "VARI"))]
Vari,
__Unknown__(String),
}
impl Default for DateType3Code {
fn default() -> DateType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DateType3Code {}
#[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:sese.023.002.11")]
pub enum DeliveryReceiptType2Code {
#[yaserde(rename = "FREE")]
#[cfg_attr(feature = "serde", serde(rename = "FREE"))]
Free,
#[yaserde(rename = "APMT")]
#[cfg_attr(feature = "serde", serde(rename = "APMT"))]
Apmt,
__Unknown__(String),
}
impl Default for DeliveryReceiptType2Code {
fn default() -> DeliveryReceiptType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DeliveryReceiptType2Code {}
#[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:sese.023.002.11")]
pub enum DeliveryReturn1Code {
#[yaserde(rename = "UNRE")]
#[cfg_attr(feature = "serde", serde(rename = "UNRE"))]
Unre,
#[yaserde(rename = "DQUA")]
#[cfg_attr(feature = "serde", serde(rename = "DQUA"))]
Dqua,
#[yaserde(rename = "DMON")]
#[cfg_attr(feature = "serde", serde(rename = "DMON"))]
Dmon,
#[yaserde(rename = "PART")]
#[cfg_attr(feature = "serde", serde(rename = "PART"))]
Part,
#[yaserde(rename = "SAFE")]
#[cfg_attr(feature = "serde", serde(rename = "SAFE"))]
Safe,
#[yaserde(rename = "DUEB")]
#[cfg_attr(feature = "serde", serde(rename = "DUEB"))]
Dueb,
#[yaserde(rename = "PARD")]
#[cfg_attr(feature = "serde", serde(rename = "PARD"))]
Pard,
__Unknown__(String),
}
impl Default for DeliveryReturn1Code {
fn default() -> DeliveryReturn1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DeliveryReturn1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct DeliveryReturn4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DeliveryReturn1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for DeliveryReturn4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Document {
#[yaserde(rename = "SctiesSttlmTxInstr")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesSttlmTxInstr"))]
pub scties_sttlm_tx_instr: SecuritiesSettlementTransactionInstruction002V11,
}
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:sese.023.002.11")]
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub enum Eligibility1Code {
#[yaserde(rename = "ELIG")]
#[cfg_attr(feature = "serde", serde(rename = "ELIG"))]
Elig,
#[yaserde(rename = "RETL")]
#[cfg_attr(feature = "serde", serde(rename = "RETL"))]
Retl,
#[yaserde(rename = "PROF")]
#[cfg_attr(feature = "serde", serde(rename = "PROF"))]
Prof,
__Unknown__(String),
}
impl Default for Eligibility1Code {
fn default() -> Eligibility1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Eligibility1Code {}
#[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:sese.023.002.11")]
pub enum EventFrequency3Code {
#[yaserde(rename = "YEAR")]
#[cfg_attr(feature = "serde", serde(rename = "YEAR"))]
Year,
#[yaserde(rename = "MNTH")]
#[cfg_attr(feature = "serde", serde(rename = "MNTH"))]
Mnth,
#[yaserde(rename = "QUTR")]
#[cfg_attr(feature = "serde", serde(rename = "QUTR"))]
Qutr,
#[yaserde(rename = "SEMI")]
#[cfg_attr(feature = "serde", serde(rename = "SEMI"))]
Semi,
#[yaserde(rename = "WEEK")]
#[cfg_attr(feature = "serde", serde(rename = "WEEK"))]
Week,
__Unknown__(String),
}
impl Default for EventFrequency3Code {
fn default() -> EventFrequency3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for EventFrequency3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact3NumericText (pub String);
crate::simple_type!(Exact3NumericText);
impl Validate for Exact3NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact4AlphaNumericText (pub String);
crate::simple_type!(Exact4AlphaNumericText);
impl Validate for Exact4AlphaNumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact4NumericText (pub String);
crate::simple_type!(Exact4NumericText);
impl Validate for Exact4NumericText {}
#[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:sese.023.002.11")]
pub enum ExposureType12Code {
#[yaserde(rename = "BFWD")]
#[cfg_attr(feature = "serde", serde(rename = "BFWD"))]
Bfwd,
#[yaserde(rename = "PAYM")]
#[cfg_attr(feature = "serde", serde(rename = "PAYM"))]
Paym,
#[yaserde(rename = "CCPC")]
#[cfg_attr(feature = "serde", serde(rename = "CCPC"))]
Ccpc,
#[yaserde(rename = "COMM")]
#[cfg_attr(feature = "serde", serde(rename = "COMM"))]
Comm,
#[yaserde(rename = "CRDS")]
#[cfg_attr(feature = "serde", serde(rename = "CRDS"))]
Crds,
#[yaserde(rename = "CRTL")]
#[cfg_attr(feature = "serde", serde(rename = "CRTL"))]
Crtl,
#[yaserde(rename = "CRSP")]
#[cfg_attr(feature = "serde", serde(rename = "CRSP"))]
Crsp,
#[yaserde(rename = "CCIR")]
#[cfg_attr(feature = "serde", serde(rename = "CCIR"))]
Ccir,
#[yaserde(rename = "CRPR")]
#[cfg_attr(feature = "serde", serde(rename = "CRPR"))]
Crpr,
#[yaserde(rename = "EQPT")]
#[cfg_attr(feature = "serde", serde(rename = "EQPT"))]
Eqpt,
#[yaserde(rename = "EXTD")]
#[cfg_attr(feature = "serde", serde(rename = "EXTD"))]
Extd,
#[yaserde(rename = "EQUS")]
#[cfg_attr(feature = "serde", serde(rename = "EQUS"))]
Equs,
#[yaserde(rename = "EXPT")]
#[cfg_attr(feature = "serde", serde(rename = "EXPT"))]
Expt,
#[yaserde(rename = "FIXI")]
#[cfg_attr(feature = "serde", serde(rename = "FIXI"))]
Fixi,
#[yaserde(rename = "FORX")]
#[cfg_attr(feature = "serde", serde(rename = "FORX"))]
Forx,
#[yaserde(rename = "FORW")]
#[cfg_attr(feature = "serde", serde(rename = "FORW"))]
Forw,
#[yaserde(rename = "FUTR")]
#[cfg_attr(feature = "serde", serde(rename = "FUTR"))]
Futr,
#[yaserde(rename = "OPTN")]
#[cfg_attr(feature = "serde", serde(rename = "OPTN"))]
Optn,
#[yaserde(rename = "LIQU")]
#[cfg_attr(feature = "serde", serde(rename = "LIQU"))]
Liqu,
#[yaserde(rename = "OTCD")]
#[cfg_attr(feature = "serde", serde(rename = "OTCD"))]
Otcd,
#[yaserde(rename = "REPO")]
#[cfg_attr(feature = "serde", serde(rename = "REPO"))]
Repo,
#[yaserde(rename = "RVPO")]
#[cfg_attr(feature = "serde", serde(rename = "RVPO"))]
Rvpo,
#[yaserde(rename = "SLOA")]
#[cfg_attr(feature = "serde", serde(rename = "SLOA"))]
Sloa,
#[yaserde(rename = "SBSC")]
#[cfg_attr(feature = "serde", serde(rename = "SBSC"))]
Sbsc,
#[yaserde(rename = "SCRP")]
#[cfg_attr(feature = "serde", serde(rename = "SCRP"))]
Scrp,
#[yaserde(rename = "SLEB")]
#[cfg_attr(feature = "serde", serde(rename = "SLEB"))]
Sleb,
#[yaserde(rename = "SHSL")]
#[cfg_attr(feature = "serde", serde(rename = "SHSL"))]
Shsl,
#[yaserde(rename = "SCIR")]
#[cfg_attr(feature = "serde", serde(rename = "SCIR"))]
Scir,
#[yaserde(rename = "SCIE")]
#[cfg_attr(feature = "serde", serde(rename = "SCIE"))]
Scie,
#[yaserde(rename = "SWPT")]
#[cfg_attr(feature = "serde", serde(rename = "SWPT"))]
Swpt,
#[yaserde(rename = "TBAS")]
#[cfg_attr(feature = "serde", serde(rename = "TBAS"))]
Tbas,
#[yaserde(rename = "UDMS")]
#[cfg_attr(feature = "serde", serde(rename = "UDMS"))]
Udms,
#[yaserde(rename = "TRCP")]
#[cfg_attr(feature = "serde", serde(rename = "TRCP"))]
Trcp,
__Unknown__(String),
}
impl Default for ExposureType12Code {
fn default() -> ExposureType12Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ExposureType12Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct ExposureType24Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<ExposureType12Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for ExposureType24Choice {}
#[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:sese.023.002.11")]
pub struct FxstandingInstruction5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for FxstandingInstruction5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct FinancialInstrumentAttributes122 {
#[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 = "RegnForm")]
#[cfg_attr(feature = "serde", serde(rename = "RegnForm"))]
pub regn_form: FormOfSecurity7Choice,
#[yaserde(rename = "PmtFrqcy")]
#[cfg_attr(feature = "serde", serde(rename = "PmtFrqcy"))]
pub pmt_frqcy: Frequency27Choice,
#[yaserde(rename = "PmtSts")]
#[cfg_attr(feature = "serde", serde(rename = "PmtSts"))]
pub pmt_sts: SecuritiesPaymentStatus6Choice,
#[yaserde(rename = "VarblRateChngFrqcy")]
#[cfg_attr(feature = "serde", serde(rename = "VarblRateChngFrqcy"))]
pub varbl_rate_chng_frqcy: Frequency27Choice,
#[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 = "OptnTp")]
#[cfg_attr(feature = "serde", serde(rename = "OptnTp"))]
pub optn_tp: OptionType7Choice,
#[yaserde(rename = "DnmtnCcy")]
#[cfg_attr(feature = "serde", serde(rename = "DnmtnCcy"))]
pub dnmtn_ccy: ActiveOrHistoricCurrencyCode,
#[yaserde(rename = "CpnDt")]
#[cfg_attr(feature = "serde", serde(rename = "CpnDt"))]
pub 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 = "FrstPmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "FrstPmtDt"))]
pub frst_pmt_dt: Isodate,
#[yaserde(rename = "PrvsFctr")]
#[cfg_attr(feature = "serde", serde(rename = "PrvsFctr"))]
pub prvs_fctr: BaseOneRate,
#[yaserde(rename = "CurFctr")]
#[cfg_attr(feature = "serde", serde(rename = "CurFctr"))]
pub cur_fctr: BaseOneRate,
#[yaserde(rename = "NxtFctr")]
#[cfg_attr(feature = "serde", serde(rename = "NxtFctr"))]
pub nxt_fctr: BaseOneRate,
#[yaserde(rename = "IntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstRate"))]
pub intrst_rate: PercentageRate,
#[yaserde(rename = "YldToMtrtyRate")]
#[cfg_attr(feature = "serde", serde(rename = "YldToMtrtyRate"))]
pub yld_to_mtrty_rate: PercentageRate,
#[yaserde(rename = "NxtIntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "NxtIntrstRate"))]
pub nxt_intrst_rate: PercentageRate,
#[yaserde(rename = "IndxRateBsis")]
#[cfg_attr(feature = "serde", serde(rename = "IndxRateBsis"))]
pub indx_rate_bsis: PercentageRate,
#[yaserde(rename = "CpnAttchdNb")]
#[cfg_attr(feature = "serde", serde(rename = "CpnAttchdNb"))]
pub cpn_attchd_nb: Number23Choice,
#[yaserde(rename = "PoolNb")]
#[cfg_attr(feature = "serde", serde(rename = "PoolNb"))]
pub pool_nb: GenericIdentification39,
#[yaserde(rename = "VarblRateInd")]
#[cfg_attr(feature = "serde", serde(rename = "VarblRateInd"))]
pub varbl_rate_ind: YesNoIndicator,
#[yaserde(rename = "CllblInd")]
#[cfg_attr(feature = "serde", serde(rename = "CllblInd"))]
pub cllbl_ind: YesNoIndicator,
#[yaserde(rename = "PutblInd")]
#[cfg_attr(feature = "serde", serde(rename = "PutblInd"))]
pub putbl_ind: YesNoIndicator,
#[yaserde(rename = "MktOrIndctvPric")]
#[cfg_attr(feature = "serde", serde(rename = "MktOrIndctvPric"))]
pub mkt_or_indctv_pric: PriceType5Choice,
#[yaserde(rename = "ExrcPric")]
#[cfg_attr(feature = "serde", serde(rename = "ExrcPric"))]
pub exrc_pric: Price3,
#[yaserde(rename = "SbcptPric")]
#[cfg_attr(feature = "serde", serde(rename = "SbcptPric"))]
pub sbcpt_pric: Price3,
#[yaserde(rename = "ConvsPric")]
#[cfg_attr(feature = "serde", serde(rename = "ConvsPric"))]
pub convs_pric: Price3,
#[yaserde(rename = "StrkPric")]
#[cfg_attr(feature = "serde", serde(rename = "StrkPric"))]
pub strk_pric: Price3,
#[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,
#[yaserde(rename = "UndrlygFinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "UndrlygFinInstrmId"))]
pub undrlyg_fin_instrm_id: Vec<SecurityIdentification20>,
#[yaserde(rename = "FinInstrmAttrAddtlDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmAttrAddtlDtls"))]
pub fin_instrm_attr_addtl_dtls: RestrictedFINXMax350Text,
}
impl Validate for FinancialInstrumentAttributes122 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
pub struct ForeignExchangeTerms23 {
#[yaserde(rename = "UnitCcy")]
#[cfg_attr(feature = "serde", serde(rename = "UnitCcy"))]
pub unit_ccy: ActiveCurrencyCode,
#[yaserde(rename = "QtdCcy")]
#[cfg_attr(feature = "serde", serde(rename = "QtdCcy"))]
pub qtd_ccy: ActiveCurrencyCode,
#[yaserde(rename = "XchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "XchgRate"))]
pub xchg_rate: BaseOneRate,
#[yaserde(rename = "RsltgAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RsltgAmt"))]
pub rsltg_amt: ActiveCurrencyAndAmount,
}
impl Validate for ForeignExchangeTerms23 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct ForeignExchangeTerms27 {
#[yaserde(rename = "UnitCcy")]
#[cfg_attr(feature = "serde", serde(rename = "UnitCcy"))]
pub unit_ccy: ActiveCurrencyCode,
#[yaserde(rename = "QtdCcy")]
#[cfg_attr(feature = "serde", serde(rename = "QtdCcy"))]
pub qtd_ccy: ActiveCurrencyCode,
#[yaserde(rename = "XchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "XchgRate"))]
pub xchg_rate: BaseOneRate,
#[yaserde(rename = "RsltgAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RsltgAmt"))]
pub rsltg_amt: RestrictedFINActiveCurrencyAndAmount,
}
impl Validate for ForeignExchangeTerms27 {}
#[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:sese.023.002.11")]
pub enum FormOfSecurity1Code {
#[yaserde(rename = "BEAR")]
#[cfg_attr(feature = "serde", serde(rename = "BEAR"))]
Bear,
#[yaserde(rename = "REGD")]
#[cfg_attr(feature = "serde", serde(rename = "REGD"))]
Regd,
__Unknown__(String),
}
impl Default for FormOfSecurity1Code {
fn default() -> FormOfSecurity1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FormOfSecurity1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct FormOfSecurity7Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<FormOfSecurity1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for FormOfSecurity7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Frequency27Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<EventFrequency3Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for Frequency27Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct GenericIdentification18 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax30Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max4AlphaNumericText,
}
impl Validate for GenericIdentification18 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct GenericIdentification30 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Exact4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
}
impl Validate for GenericIdentification30 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct GenericIdentification39 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINMax30Text,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: RestrictedFINMax8Text,
}
impl Validate for GenericIdentification39 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
pub struct HoldIndicator7 {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: YesNoIndicator,
#[yaserde(rename = "Rsn")]
#[cfg_attr(feature = "serde", serde(rename = "Rsn"))]
pub rsn: Vec<RegistrationReason6>,
}
impl Validate for HoldIndicator7 {}
#[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, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
pub struct IdentificationType44Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<TypeOfIdentification1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for IdentificationType44Choice {}
#[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:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
pub struct InvestorCapacity5Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Eligibility1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for InvestorCapacity5Choice {}
#[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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct LetterOfGuarantee5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for LetterOfGuarantee5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Linkages65 {
#[yaserde(rename = "PrcgPos")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgPos"))]
pub prcg_pos: ProcessingPosition10Choice,
#[yaserde(rename = "MsgNb")]
#[cfg_attr(feature = "serde", serde(rename = "MsgNb"))]
pub msg_nb: DocumentNumber6Choice,
#[yaserde(rename = "Ref")]
#[cfg_attr(feature = "serde", serde(rename = "Ref"))]
pub _ref: References50Choice,
#[yaserde(rename = "LkdQty")]
#[cfg_attr(feature = "serde", serde(rename = "LkdQty"))]
pub lkd_qty: PairedOrTurnedQuantity6Choice,
#[yaserde(rename = "RefOwnr")]
#[cfg_attr(feature = "serde", serde(rename = "RefOwnr"))]
pub ref_ownr: PartyIdentification136Choice,
}
impl Validate for Linkages65 {}
#[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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub enum MarketClientSide1Code {
#[yaserde(rename = "CLNT")]
#[cfg_attr(feature = "serde", serde(rename = "CLNT"))]
Clnt,
#[yaserde(rename = "MAKT")]
#[cfg_attr(feature = "serde", serde(rename = "MAKT"))]
Makt,
__Unknown__(String),
}
impl Default for MarketClientSide1Code {
fn default() -> MarketClientSide1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MarketClientSide1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct MarketClientSide7Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<MarketClientSide1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for MarketClientSide7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct MarketIdentification2Choice {
#[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 MarketIdentification2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct MarketIdentification90 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: MarketIdentification2Choice,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: MarketType16Choice,
}
impl Validate for MarketIdentification90 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct MarketType16Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<MarketType2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for MarketType16Choice {}
#[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:sese.023.002.11")]
pub enum MarketType2Code {
#[yaserde(rename = "PRIM")]
#[cfg_attr(feature = "serde", serde(rename = "PRIM"))]
Prim,
#[yaserde(rename = "SECM")]
#[cfg_attr(feature = "serde", serde(rename = "SECM"))]
Secm,
#[yaserde(rename = "OTCO")]
#[cfg_attr(feature = "serde", serde(rename = "OTCO"))]
Otco,
#[yaserde(rename = "VARI")]
#[cfg_attr(feature = "serde", serde(rename = "VARI"))]
Vari,
#[yaserde(rename = "EXCH")]
#[cfg_attr(feature = "serde", serde(rename = "EXCH"))]
Exch,
__Unknown__(String),
}
impl Default for MarketType2Code {
fn default() -> MarketType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MarketType2Code {}
#[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:sese.023.002.11")]
pub enum MatchingStatus1Code {
#[yaserde(rename = "MACH")]
#[cfg_attr(feature = "serde", serde(rename = "MACH"))]
Mach,
#[yaserde(rename = "NMAT")]
#[cfg_attr(feature = "serde", serde(rename = "NMAT"))]
Nmat,
__Unknown__(String),
}
impl Default for MatchingStatus1Code {
fn default() -> MatchingStatus1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MatchingStatus1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct MatchingStatus28Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<MatchingStatus1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for MatchingStatus28Choice {}
#[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 Max35Text (pub String);
crate::simple_type!(Max35Text);
impl Validate for Max35Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 35 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 35 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max3Number (pub String);
crate::simple_type!(Max3Number);
impl Validate for Max3Number {}
#[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 Max6NumericText (pub String);
crate::simple_type!(Max6NumericText);
impl Validate for Max6NumericText {}
#[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:sese.023.002.11")]
pub struct ModificationCancellationAllowed5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for ModificationCancellationAllowed5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
pub struct NettingEligibility5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for NettingEligibility5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Number23Choice {
#[yaserde(rename = "Shrt")]
#[cfg_attr(feature = "serde", serde(rename = "Shrt"))]
pub shrt: Option<Exact3NumericText>,
#[yaserde(rename = "Lng")]
#[cfg_attr(feature = "serde", serde(rename = "Lng"))]
pub lng: Option<GenericIdentification18>,
}
impl Validate for Number23Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct NumberCount2Choice {
#[yaserde(rename = "CurInstrNb")]
#[cfg_attr(feature = "serde", serde(rename = "CurInstrNb"))]
pub cur_instr_nb: Option<Max6NumericText>,
#[yaserde(rename = "TtlNb")]
#[cfg_attr(feature = "serde", serde(rename = "TtlNb"))]
pub ttl_nb: Option<TotalNumber2>,
}
impl Validate for NumberCount2Choice {}
#[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:sese.023.002.11")]
pub enum OpeningClosing1Code {
#[yaserde(rename = "CLOP")]
#[cfg_attr(feature = "serde", serde(rename = "CLOP"))]
Clop,
#[yaserde(rename = "OPEP")]
#[cfg_attr(feature = "serde", serde(rename = "OPEP"))]
Opep,
__Unknown__(String),
}
impl Default for OpeningClosing1Code {
fn default() -> OpeningClosing1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OpeningClosing1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct OpeningClosing4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OpeningClosing1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for OpeningClosing4Choice {}
#[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:sese.023.002.11")]
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:sese.023.002.11")]
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub enum OptionType1Code {
#[yaserde(rename = "CALL")]
#[cfg_attr(feature = "serde", serde(rename = "CALL"))]
Call,
#[yaserde(rename = "PUTO")]
#[cfg_attr(feature = "serde", serde(rename = "PUTO"))]
Puto,
__Unknown__(String),
}
impl Default for OptionType1Code {
fn default() -> OptionType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct OptionType7Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OptionType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for OptionType7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub enum OriginatorRole2Code {
#[yaserde(rename = "SINT")]
#[cfg_attr(feature = "serde", serde(rename = "SINT"))]
Sint,
#[yaserde(rename = "MLTF")]
#[cfg_attr(feature = "serde", serde(rename = "MLTF"))]
Mltf,
#[yaserde(rename = "RMKT")]
#[cfg_attr(feature = "serde", serde(rename = "RMKT"))]
Rmkt,
#[yaserde(rename = "MKTM")]
#[cfg_attr(feature = "serde", serde(rename = "MKTM"))]
Mktm,
#[yaserde(rename = "INVE")]
#[cfg_attr(feature = "serde", serde(rename = "INVE"))]
Inve,
#[yaserde(rename = "TAGT")]
#[cfg_attr(feature = "serde", serde(rename = "TAGT"))]
Tagt,
__Unknown__(String),
}
impl Default for OriginatorRole2Code {
fn default() -> OriginatorRole2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OriginatorRole2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct OtherAmounts43 {
#[yaserde(rename = "AcrdIntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AcrdIntrstAmt"))]
pub acrd_intrst_amt: AmountAndDirection58,
#[yaserde(rename = "ChrgsFees")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsFees"))]
pub chrgs_fees: AmountAndDirection58,
#[yaserde(rename = "CtryNtlFdrlTax")]
#[cfg_attr(feature = "serde", serde(rename = "CtryNtlFdrlTax"))]
pub ctry_ntl_fdrl_tax: AmountAndDirection58,
#[yaserde(rename = "TradAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TradAmt"))]
pub trad_amt: AmountAndDirection58,
#[yaserde(rename = "ExctgBrkrAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ExctgBrkrAmt"))]
pub exctg_brkr_amt: AmountAndDirection58,
#[yaserde(rename = "IsseDscntAllwnc")]
#[cfg_attr(feature = "serde", serde(rename = "IsseDscntAllwnc"))]
pub isse_dscnt_allwnc: AmountAndDirection58,
#[yaserde(rename = "PmtLevyTax")]
#[cfg_attr(feature = "serde", serde(rename = "PmtLevyTax"))]
pub pmt_levy_tax: AmountAndDirection58,
#[yaserde(rename = "LclTax")]
#[cfg_attr(feature = "serde", serde(rename = "LclTax"))]
pub lcl_tax: AmountAndDirection58,
#[yaserde(rename = "LclTaxCtrySpcfc")]
#[cfg_attr(feature = "serde", serde(rename = "LclTaxCtrySpcfc"))]
pub lcl_tax_ctry_spcfc: AmountAndDirection58,
#[yaserde(rename = "LclBrkrComssn")]
#[cfg_attr(feature = "serde", serde(rename = "LclBrkrComssn"))]
pub lcl_brkr_comssn: AmountAndDirection58,
#[yaserde(rename = "Mrgn")]
#[cfg_attr(feature = "serde", serde(rename = "Mrgn"))]
pub mrgn: AmountAndDirection58,
#[yaserde(rename = "Othr")]
#[cfg_attr(feature = "serde", serde(rename = "Othr"))]
pub othr: AmountAndDirection58,
#[yaserde(rename = "RgltryAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RgltryAmt"))]
pub rgltry_amt: AmountAndDirection58,
#[yaserde(rename = "ShppgAmt")]
#[cfg_attr(feature = "serde", serde(rename = "ShppgAmt"))]
pub shppg_amt: AmountAndDirection58,
#[yaserde(rename = "SpclCncssn")]
#[cfg_attr(feature = "serde", serde(rename = "SpclCncssn"))]
pub spcl_cncssn: AmountAndDirection58,
#[yaserde(rename = "StmpDty")]
#[cfg_attr(feature = "serde", serde(rename = "StmpDty"))]
pub stmp_dty: AmountAndDirection58,
#[yaserde(rename = "StockXchgTax")]
#[cfg_attr(feature = "serde", serde(rename = "StockXchgTax"))]
pub stock_xchg_tax: AmountAndDirection58,
#[yaserde(rename = "TrfTax")]
#[cfg_attr(feature = "serde", serde(rename = "TrfTax"))]
pub trf_tax: AmountAndDirection58,
#[yaserde(rename = "TxTax")]
#[cfg_attr(feature = "serde", serde(rename = "TxTax"))]
pub tx_tax: AmountAndDirection58,
#[yaserde(rename = "ValAddedTax")]
#[cfg_attr(feature = "serde", serde(rename = "ValAddedTax"))]
pub val_added_tax: AmountAndDirection58,
#[yaserde(rename = "WhldgTax")]
#[cfg_attr(feature = "serde", serde(rename = "WhldgTax"))]
pub whldg_tax: AmountAndDirection58,
#[yaserde(rename = "NetGnLoss")]
#[cfg_attr(feature = "serde", serde(rename = "NetGnLoss"))]
pub net_gn_loss: AmountAndDirection58,
#[yaserde(rename = "CsmptnTax")]
#[cfg_attr(feature = "serde", serde(rename = "CsmptnTax"))]
pub csmptn_tax: AmountAndDirection58,
#[yaserde(rename = "AcrdCptlstnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AcrdCptlstnAmt"))]
pub acrd_cptlstn_amt: AmountAndDirection58,
#[yaserde(rename = "RsrchFee")]
#[cfg_attr(feature = "serde", serde(rename = "RsrchFee"))]
pub rsrch_fee: AmountAndDirection44,
}
impl Validate for OtherAmounts43 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
pub struct OtherParties44 {
#[yaserde(rename = "Invstr")]
#[cfg_attr(feature = "serde", serde(rename = "Invstr"))]
pub invstr: Vec<PartyIdentificationAndAccount208>,
#[yaserde(rename = "QlfdFrgnIntrmy")]
#[cfg_attr(feature = "serde", serde(rename = "QlfdFrgnIntrmy"))]
pub qlfd_frgn_intrmy: PartyIdentificationAndAccount209,
#[yaserde(rename = "StockXchg")]
#[cfg_attr(feature = "serde", serde(rename = "StockXchg"))]
pub stock_xchg: PartyIdentificationAndAccount181,
#[yaserde(rename = "TradRgltr")]
#[cfg_attr(feature = "serde", serde(rename = "TradRgltr"))]
pub trad_rgltr: PartyIdentificationAndAccount181,
#[yaserde(rename = "TrptyAgt")]
#[cfg_attr(feature = "serde", serde(rename = "TrptyAgt"))]
pub trpty_agt: PartyIdentificationAndAccount209,
#[yaserde(rename = "Brkr")]
#[cfg_attr(feature = "serde", serde(rename = "Brkr"))]
pub brkr: PartyIdentificationAndAccount209,
}
impl Validate for OtherParties44 {}
#[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:sese.023.002.11")]
pub enum OwnershipLegalRestrictions1Code {
A144,
#[yaserde(rename = "NRST")]
#[cfg_attr(feature = "serde", serde(rename = "NRST"))]
Nrst,
#[yaserde(rename = "RSTR")]
#[cfg_attr(feature = "serde", serde(rename = "RSTR"))]
Rstr,
__Unknown__(String),
}
impl Default for OwnershipLegalRestrictions1Code {
fn default() -> OwnershipLegalRestrictions1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OwnershipLegalRestrictions1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PairedOrTurnedQuantity6Choice {
#[yaserde(rename = "PairdOffQty")]
#[cfg_attr(feature = "serde", serde(rename = "PairdOffQty"))]
pub paird_off_qty: Option<FinancialInstrumentQuantity36Choice>,
#[yaserde(rename = "TrndQty")]
#[cfg_attr(feature = "serde", serde(rename = "TrndQty"))]
pub trnd_qty: Option<FinancialInstrumentQuantity36Choice>,
}
impl Validate for PairedOrTurnedQuantity6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
pub struct PartyIdentification145Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress12>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
}
impl Validate for PartyIdentification145Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentification147Choice {
#[yaserde(rename = "BICFI")]
#[cfg_attr(feature = "serde", serde(rename = "BICFI"))]
pub bicfi: Option<Bicfidec2014Identifier>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress12>,
#[yaserde(rename = "PrtryId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryId"))]
pub prtry_id: Option<GenericIdentification84>,
}
impl Validate for PartyIdentification147Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentification156 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification136Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PartyIdentification156 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentification157 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification137Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PartyIdentification157 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentification162 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification145Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: AlternatePartyIdentification9,
#[yaserde(rename = "PrcgDt")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgDt"))]
pub prcg_dt: DateAndDateTime2Choice,
#[yaserde(rename = "PrcgId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgId"))]
pub prcg_id: RestrictedFINXMax16Text,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: PartyTextInformation3,
}
impl Validate for PartyIdentification162 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentificationAndAccount177 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification137Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: AlternatePartyIdentification9,
#[yaserde(rename = "CshAcct")]
#[cfg_attr(feature = "serde", serde(rename = "CshAcct"))]
pub csh_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "ChrgsAcct")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsAcct"))]
pub chrgs_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "ComssnAcct")]
#[cfg_attr(feature = "serde", serde(rename = "ComssnAcct"))]
pub comssn_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "TaxAcct")]
#[cfg_attr(feature = "serde", serde(rename = "TaxAcct"))]
pub tax_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: PartyTextInformation4,
}
impl Validate for PartyIdentificationAndAccount177 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentificationAndAccount178 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification147Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: AlternatePartyIdentification9,
#[yaserde(rename = "CshAcct")]
#[cfg_attr(feature = "serde", serde(rename = "CshAcct"))]
pub csh_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "ChrgsAcct")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgsAcct"))]
pub chrgs_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "ComssnAcct")]
#[cfg_attr(feature = "serde", serde(rename = "ComssnAcct"))]
pub comssn_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "TaxAcct")]
#[cfg_attr(feature = "serde", serde(rename = "TaxAcct"))]
pub tax_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: PartyTextInformation4,
}
impl Validate for PartyIdentificationAndAccount178 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentificationAndAccount181 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification137Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: AlternatePartyIdentification9,
#[yaserde(rename = "PrcgId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgId"))]
pub prcg_id: RestrictedFINXMax16Text,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: PartyTextInformation3,
}
impl Validate for PartyIdentificationAndAccount181 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentificationAndAccount206 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification137Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: AlternatePartyIdentification9,
#[yaserde(rename = "SfkpgAcct")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgAcct"))]
pub sfkpg_acct: SecuritiesAccount30,
#[yaserde(rename = "BlckChainAdrOrWllt")]
#[cfg_attr(feature = "serde", serde(rename = "BlckChainAdrOrWllt"))]
pub blck_chain_adr_or_wllt: BlockChainAddressWallet7,
#[yaserde(rename = "PrcgDt")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgDt"))]
pub prcg_dt: DateAndDateTime2Choice,
#[yaserde(rename = "PrcgId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgId"))]
pub prcg_id: RestrictedFINXMax16Text,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: PartyTextInformation3,
}
impl Validate for PartyIdentificationAndAccount206 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentificationAndAccount208 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification137Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: AlternatePartyIdentification9,
#[yaserde(rename = "Ntlty")]
#[cfg_attr(feature = "serde", serde(rename = "Ntlty"))]
pub ntlty: CountryCode,
#[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 = "PrcgId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgId"))]
pub prcg_id: RestrictedFINXMax16Text,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: PartyTextInformation3,
}
impl Validate for PartyIdentificationAndAccount208 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyIdentificationAndAccount209 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification137Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "AltrnId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnId"))]
pub altrn_id: AlternatePartyIdentification9,
#[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 = "PrcgId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgId"))]
pub prcg_id: RestrictedFINXMax16Text,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: PartyTextInformation3,
}
impl Validate for PartyIdentificationAndAccount209 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyTextInformation3 {
#[yaserde(rename = "DclrtnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DclrtnDtls"))]
pub dclrtn_dtls: RestrictedFINXMax350Text,
#[yaserde(rename = "PtyCtctDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PtyCtctDtls"))]
pub pty_ctct_dtls: RestrictedFINXMax140Text,
#[yaserde(rename = "RegnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "RegnDtls"))]
pub regn_dtls: RestrictedFINXMax350Text,
}
impl Validate for PartyTextInformation3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PartyTextInformation4 {
#[yaserde(rename = "DclrtnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "DclrtnDtls"))]
pub dclrtn_dtls: RestrictedFINXMax350Text,
#[yaserde(rename = "PtyCtctDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PtyCtctDtls"))]
pub pty_ctct_dtls: RestrictedFINXMax140Text,
}
impl Validate for PartyTextInformation4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct PercentageRate (pub String);
crate::simple_type!(PercentageRate);
impl Validate for PercentageRate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PlaceOfClearingIdentification2 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: AnyBICDec2014Identifier,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PlaceOfClearingIdentification2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PlaceOfTradeIdentification2 {
#[yaserde(rename = "MktTpAndId")]
#[cfg_attr(feature = "serde", serde(rename = "MktTpAndId"))]
pub mkt_tp_and_id: MarketIdentification90,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PlaceOfTradeIdentification2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Price11 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: YieldedOrValueType2Choice,
#[yaserde(rename = "Val")]
#[cfg_attr(feature = "serde", serde(rename = "Val"))]
pub val: PriceRateOrAmount1Choice,
}
impl Validate for Price11 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Price3 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: YieldedOrValueType1Choice,
#[yaserde(rename = "Val")]
#[cfg_attr(feature = "serde", serde(rename = "Val"))]
pub val: PriceRateOrAmount1Choice,
}
impl Validate for Price3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PriceRateOrAmount1Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<RestrictedFINActiveOrHistoricCurrencyAnd13DecimalAmount>,
}
impl Validate for PriceRateOrAmount1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PriceType5Choice {
#[yaserde(rename = "Mkt")]
#[cfg_attr(feature = "serde", serde(rename = "Mkt"))]
pub mkt: Option<Price3>,
#[yaserde(rename = "Indctv")]
#[cfg_attr(feature = "serde", serde(rename = "Indctv"))]
pub indctv: Option<Price3>,
}
impl Validate for PriceType5Choice {}
#[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:sese.023.002.11")]
pub enum PriceValueType12Code {
#[yaserde(rename = "DISC")]
#[cfg_attr(feature = "serde", serde(rename = "DISC"))]
Disc,
#[yaserde(rename = "PARV")]
#[cfg_attr(feature = "serde", serde(rename = "PARV"))]
Parv,
#[yaserde(rename = "PREM")]
#[cfg_attr(feature = "serde", serde(rename = "PREM"))]
Prem,
#[yaserde(rename = "NEGA")]
#[cfg_attr(feature = "serde", serde(rename = "NEGA"))]
Nega,
__Unknown__(String),
}
impl Default for PriceValueType12Code {
fn default() -> PriceValueType12Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceValueType12Code {}
#[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:sese.023.002.11")]
pub enum PriceValueType1Code {
#[yaserde(rename = "DISC")]
#[cfg_attr(feature = "serde", serde(rename = "DISC"))]
Disc,
#[yaserde(rename = "PREM")]
#[cfg_attr(feature = "serde", serde(rename = "PREM"))]
Prem,
#[yaserde(rename = "PARV")]
#[cfg_attr(feature = "serde", serde(rename = "PARV"))]
Parv,
__Unknown__(String),
}
impl Default for PriceValueType1Code {
fn default() -> PriceValueType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceValueType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct PriorityNumeric5Choice {
#[yaserde(rename = "Nmrc")]
#[cfg_attr(feature = "serde", serde(rename = "Nmrc"))]
pub nmrc: Option<Exact4NumericText>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for PriorityNumeric5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
pub struct QuantityAndAccount104 {
#[yaserde(rename = "SttlmQty")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmQty"))]
pub sttlm_qty: Quantity54Choice,
#[yaserde(rename = "DnmtnChc")]
#[cfg_attr(feature = "serde", serde(rename = "DnmtnChc"))]
pub dnmtn_chc: RestrictedFINXMax210Text,
#[yaserde(rename = "AcctOwnr")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnr"))]
pub acct_ownr: PartyIdentification156,
#[yaserde(rename = "SfkpgAcct")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgAcct"))]
pub sfkpg_acct: SecuritiesAccount30,
#[yaserde(rename = "BlckChainAdrOrWllt")]
#[cfg_attr(feature = "serde", serde(rename = "BlckChainAdrOrWllt"))]
pub blck_chain_adr_or_wllt: BlockChainAddressWallet7,
#[yaserde(rename = "CshAcct")]
#[cfg_attr(feature = "serde", serde(rename = "CshAcct"))]
pub csh_acct: CashAccountIdentification6Choice,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafeKeepingPlace4,
#[yaserde(rename = "QtyBrkdwn")]
#[cfg_attr(feature = "serde", serde(rename = "QtyBrkdwn"))]
pub qty_brkdwn: Vec<QuantityBreakdown69>,
}
impl Validate for QuantityAndAccount104 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct QuantityBreakdown69 {
#[yaserde(rename = "LotNb")]
#[cfg_attr(feature = "serde", serde(rename = "LotNb"))]
pub lot_nb: GenericIdentification39,
#[yaserde(rename = "LotQty")]
#[cfg_attr(feature = "serde", serde(rename = "LotQty"))]
pub lot_qty: FinancialInstrumentQuantity36Choice,
#[yaserde(rename = "LotDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "LotDtTm"))]
pub lot_dt_tm: DateAndDateTime2Choice,
#[yaserde(rename = "LotPric")]
#[cfg_attr(feature = "serde", serde(rename = "LotPric"))]
pub lot_pric: Price3,
#[yaserde(rename = "TpOfPric")]
#[cfg_attr(feature = "serde", serde(rename = "TpOfPric"))]
pub tp_of_pric: TypeOfPrice32Choice,
}
impl Validate for QuantityBreakdown69 {}
#[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:sese.023.002.11")]
pub enum ReceiveDelivery1Code {
#[yaserde(rename = "DELI")]
#[cfg_attr(feature = "serde", serde(rename = "DELI"))]
Deli,
#[yaserde(rename = "RECE")]
#[cfg_attr(feature = "serde", serde(rename = "RECE"))]
Rece,
__Unknown__(String),
}
impl Default for ReceiveDelivery1Code {
fn default() -> ReceiveDelivery1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ReceiveDelivery1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct References50Choice {
#[yaserde(rename = "SctiesSttlmTxId")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesSttlmTxId"))]
pub scties_sttlm_tx_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "IntraPosMvmntId")]
#[cfg_attr(feature = "serde", serde(rename = "IntraPosMvmntId"))]
pub intra_pos_mvmnt_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "IntraBalMvmntId")]
#[cfg_attr(feature = "serde", serde(rename = "IntraBalMvmntId"))]
pub intra_bal_mvmnt_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "AcctSvcrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrTxId"))]
pub acct_svcr_tx_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "MktInfrstrctrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "MktInfrstrctrTxId"))]
pub mkt_infrstrctr_tx_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "PoolId")]
#[cfg_attr(feature = "serde", serde(rename = "PoolId"))]
pub pool_id: Option<RestrictedFINXMax16Text>,
#[yaserde(rename = "OthrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "OthrTxId"))]
pub othr_tx_id: Option<RestrictedFINXMax16Text>,
}
impl Validate for References50Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Registration11Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Registration1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for Registration11Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Registration12Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Registration2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for Registration12Choice {}
#[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:sese.023.002.11")]
pub enum Registration1Code {
#[yaserde(rename = "NREG")]
#[cfg_attr(feature = "serde", serde(rename = "NREG"))]
Nreg,
#[yaserde(rename = "YREG")]
#[cfg_attr(feature = "serde", serde(rename = "YREG"))]
Yreg,
__Unknown__(String),
}
impl Default for Registration1Code {
fn default() -> Registration1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Registration1Code {}
#[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:sese.023.002.11")]
pub enum Registration2Code {
#[yaserde(rename = "PTYH")]
#[cfg_attr(feature = "serde", serde(rename = "PTYH"))]
Ptyh,
#[yaserde(rename = "CSDH")]
#[cfg_attr(feature = "serde", serde(rename = "CSDH"))]
Csdh,
#[yaserde(rename = "CDEL")]
#[cfg_attr(feature = "serde", serde(rename = "CDEL"))]
Cdel,
#[yaserde(rename = "CVAL")]
#[cfg_attr(feature = "serde", serde(rename = "CVAL"))]
Cval,
__Unknown__(String),
}
impl Default for Registration2Code {
fn default() -> Registration2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Registration2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct RegistrationParameters7 {
#[yaserde(rename = "CertfctnId")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnId"))]
pub certfctn_id: RestrictedFINXMax16Text,
#[yaserde(rename = "CertfctnDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnDtTm"))]
pub certfctn_dt_tm: DateAndDateTime2Choice,
#[yaserde(rename = "RegarAcct")]
#[cfg_attr(feature = "serde", serde(rename = "RegarAcct"))]
pub regar_acct: RestrictedFINXMax35Text,
#[yaserde(rename = "CertNb")]
#[cfg_attr(feature = "serde", serde(rename = "CertNb"))]
pub cert_nb: Vec<SecuritiesCertificate5>,
}
impl Validate for RegistrationParameters7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct RegistrationReason6 {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Registration12Choice,
#[yaserde(rename = "AddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlInf"))]
pub addtl_inf: RestrictedFINXMax210Text,
}
impl Validate for RegistrationReason6 {}
#[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:sese.023.002.11")]
pub enum Reporting2Code {
#[yaserde(rename = "STEX")]
#[cfg_attr(feature = "serde", serde(rename = "STEX"))]
Stex,
#[yaserde(rename = "REGU")]
#[cfg_attr(feature = "serde", serde(rename = "REGU"))]
Regu,
#[yaserde(rename = "DEFR")]
#[cfg_attr(feature = "serde", serde(rename = "DEFR"))]
Defr,
__Unknown__(String),
}
impl Default for Reporting2Code {
fn default() -> Reporting2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Reporting2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Reporting9Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Reporting2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for Reporting9Choice {}
#[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:sese.023.002.11")]
pub enum RepurchaseType10Code {
#[yaserde(rename = "PAIR")]
#[cfg_attr(feature = "serde", serde(rename = "PAIR"))]
Pair,
#[yaserde(rename = "ROLP")]
#[cfg_attr(feature = "serde", serde(rename = "ROLP"))]
Rolp,
#[yaserde(rename = "RATE")]
#[cfg_attr(feature = "serde", serde(rename = "RATE"))]
Rate,
#[yaserde(rename = "CALL")]
#[cfg_attr(feature = "serde", serde(rename = "CALL"))]
Call,
#[yaserde(rename = "CADJ")]
#[cfg_attr(feature = "serde", serde(rename = "CADJ"))]
Cadj,
#[yaserde(rename = "TOPU")]
#[cfg_attr(feature = "serde", serde(rename = "TOPU"))]
Topu,
#[yaserde(rename = "WTHD")]
#[cfg_attr(feature = "serde", serde(rename = "WTHD"))]
Wthd,
__Unknown__(String),
}
impl Default for RepurchaseType10Code {
fn default() -> RepurchaseType10Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for RepurchaseType10Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct RepurchaseType26Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<RepurchaseType10Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for RepurchaseType26Choice {}
#[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:sese.023.002.11")]
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 RestrictedFINActiveOrHistoricCurrencyAnd13DecimalAmountSimpleType (pub String);
crate::simple_type!(RestrictedFINActiveOrHistoricCurrencyAnd13DecimalAmountSimpleType);
impl Validate for RestrictedFINActiveOrHistoricCurrencyAnd13DecimalAmountSimpleType {
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:sese.023.002.11")]
pub struct RestrictedFINActiveOrHistoricCurrencyAnd13DecimalAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveOrHistoricCurrencyCode,
}
impl Validate for RestrictedFINActiveOrHistoricCurrencyAnd13DecimalAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINActiveOrHistoricCurrencyAndAmountSimpleType (pub String);
crate::simple_type!(RestrictedFINActiveOrHistoricCurrencyAndAmountSimpleType);
impl Validate for RestrictedFINActiveOrHistoricCurrencyAndAmountSimpleType {
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:sese.023.002.11")]
pub struct RestrictedFINActiveOrHistoricCurrencyAndAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveOrHistoricCurrencyCode,
}
impl Validate for RestrictedFINActiveOrHistoricCurrencyAndAmount {}
#[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 RestrictedFINMax30Text (pub String);
crate::simple_type!(RestrictedFINMax30Text);
impl Validate for RestrictedFINMax30Text {
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 RestrictedFINMax8Text (pub String);
crate::simple_type!(RestrictedFINMax8Text);
impl Validate for RestrictedFINMax8Text {
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() > 8 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 8 \nActual: 0 length == {}", self.0.len()));
}
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 RestrictedFINXMax210Text (pub String);
crate::simple_type!(RestrictedFINXMax210Text);
impl Validate for RestrictedFINXMax210Text {
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() > 210 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 210 \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(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINXMax52Text (pub String);
crate::simple_type!(RestrictedFINXMax52Text);
impl Validate for RestrictedFINXMax52Text {
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() > 52 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 52 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct RestrictedFINXMax70Text (pub String);
crate::simple_type!(RestrictedFINXMax70Text);
impl Validate for RestrictedFINXMax70Text {
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:sese.023.002.11")]
pub struct Restriction6Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OwnershipLegalRestrictions1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for Restriction6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SafeKeepingPlace4 {
#[yaserde(rename = "SfkpgPlcFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlcFrmt"))]
pub sfkpg_plc_frmt: SafekeepingPlaceFormat39Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for SafeKeepingPlace4 {}
#[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:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
pub struct SafekeepingPlaceFormat39Choice {
#[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 = "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 SafekeepingPlaceFormat39Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
pub struct SecuritiesAccount30 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: RestrictedFINXMax35Text,
#[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 SecuritiesAccount30 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SecuritiesCertificate5 {
#[yaserde(rename = "Nb")]
#[cfg_attr(feature = "serde", serde(rename = "Nb"))]
pub nb: 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 SecuritiesCertificate5 {}
#[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:sese.023.002.11")]
pub enum SecuritiesPaymentStatus1Code {
#[yaserde(rename = "FULL")]
#[cfg_attr(feature = "serde", serde(rename = "FULL"))]
Full,
#[yaserde(rename = "NILL")]
#[cfg_attr(feature = "serde", serde(rename = "NILL"))]
Nill,
#[yaserde(rename = "PART")]
#[cfg_attr(feature = "serde", serde(rename = "PART"))]
Part,
__Unknown__(String),
}
impl Default for SecuritiesPaymentStatus1Code {
fn default() -> SecuritiesPaymentStatus1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SecuritiesPaymentStatus1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SecuritiesPaymentStatus6Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SecuritiesPaymentStatus1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SecuritiesPaymentStatus6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SecuritiesRTGS5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SecuritiesRTGS5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SecuritiesSettlementTransactionInstruction002V11 {
#[yaserde(rename = "TxId")]
#[cfg_attr(feature = "serde", serde(rename = "TxId"))]
pub tx_id: RestrictedFINXMax16Text,
#[yaserde(rename = "SttlmTpAndAddtlParams")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmTpAndAddtlParams"))]
pub sttlm_tp_and_addtl_params: SettlementTypeAndAdditionalParameters22,
#[yaserde(rename = "NbCounts")]
#[cfg_attr(feature = "serde", serde(rename = "NbCounts"))]
pub nb_counts: NumberCount2Choice,
#[yaserde(rename = "Lnkgs")]
#[cfg_attr(feature = "serde", serde(rename = "Lnkgs"))]
pub lnkgs: Vec<Linkages65>,
#[yaserde(rename = "TradDtls")]
#[cfg_attr(feature = "serde", serde(rename = "TradDtls"))]
pub trad_dtls: SecuritiesTradeDetails131,
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification20,
#[yaserde(rename = "FinInstrmAttrbts")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmAttrbts"))]
pub fin_instrm_attrbts: FinancialInstrumentAttributes122,
#[yaserde(rename = "QtyAndAcctDtls")]
#[cfg_attr(feature = "serde", serde(rename = "QtyAndAcctDtls"))]
pub qty_and_acct_dtls: QuantityAndAccount104,
#[yaserde(rename = "SttlmParams")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmParams"))]
pub sttlm_params: SettlementDetails207,
#[yaserde(rename = "StgSttlmInstrDtls")]
#[cfg_attr(feature = "serde", serde(rename = "StgSttlmInstrDtls"))]
pub stg_sttlm_instr_dtls: StandingSettlementInstruction19,
#[yaserde(rename = "DlvrgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "DlvrgSttlmPties"))]
pub dlvrg_sttlm_pties: SettlementParties105,
#[yaserde(rename = "RcvgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "RcvgSttlmPties"))]
pub rcvg_sttlm_pties: SettlementParties105,
#[yaserde(rename = "CshPties")]
#[cfg_attr(feature = "serde", serde(rename = "CshPties"))]
pub csh_pties: CashParties38,
#[yaserde(rename = "SttlmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmAmt"))]
pub sttlm_amt: AmountAndDirection96,
#[yaserde(rename = "OthrAmts")]
#[cfg_attr(feature = "serde", serde(rename = "OthrAmts"))]
pub othr_amts: OtherAmounts43,
#[yaserde(rename = "OthrBizPties")]
#[cfg_attr(feature = "serde", serde(rename = "OthrBizPties"))]
pub othr_biz_pties: OtherParties44,
#[yaserde(rename = "AddtlPhysOrRegnDtls")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlPhysOrRegnDtls"))]
pub addtl_phys_or_regn_dtls: RegistrationParameters7,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
}
impl Validate for SecuritiesSettlementTransactionInstruction002V11 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SecuritiesTradeDetails131 {
#[yaserde(rename = "TradId")]
#[cfg_attr(feature = "serde", serde(rename = "TradId"))]
pub trad_id: Vec<RestrictedFINXMax52Text>,
#[yaserde(rename = "CollTxId")]
#[cfg_attr(feature = "serde", serde(rename = "CollTxId"))]
pub coll_tx_id: Vec<RestrictedFINXMax16Text>,
#[yaserde(rename = "PlcOfTrad")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfTrad"))]
pub plc_of_trad: PlaceOfTradeIdentification2,
#[yaserde(rename = "PlcOfClr")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfClr"))]
pub plc_of_clr: PlaceOfClearingIdentification2,
#[yaserde(rename = "TradDt")]
#[cfg_attr(feature = "serde", serde(rename = "TradDt"))]
pub trad_dt: TradeDate9Choice,
#[yaserde(rename = "SttlmDt")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmDt"))]
pub sttlm_dt: SettlementDate20Choice,
#[yaserde(rename = "LateDlvryDt")]
#[cfg_attr(feature = "serde", serde(rename = "LateDlvryDt"))]
pub late_dlvry_dt: DateAndDateTime2Choice,
#[yaserde(rename = "DealPric")]
#[cfg_attr(feature = "serde", serde(rename = "DealPric"))]
pub deal_pric: Price11,
#[yaserde(rename = "NbOfDaysAcrd")]
#[cfg_attr(feature = "serde", serde(rename = "NbOfDaysAcrd"))]
pub nb_of_days_acrd: Max3Number,
#[yaserde(rename = "OpngClsg")]
#[cfg_attr(feature = "serde", serde(rename = "OpngClsg"))]
pub opng_clsg: OpeningClosing4Choice,
#[yaserde(rename = "Rptg")]
#[cfg_attr(feature = "serde", serde(rename = "Rptg"))]
pub rptg: Vec<Reporting9Choice>,
#[yaserde(rename = "TradTxCond")]
#[cfg_attr(feature = "serde", serde(rename = "TradTxCond"))]
pub trad_tx_cond: Vec<TradeTransactionCondition6Choice>,
#[yaserde(rename = "InvstrCpcty")]
#[cfg_attr(feature = "serde", serde(rename = "InvstrCpcty"))]
pub invstr_cpcty: InvestorCapacity5Choice,
#[yaserde(rename = "TradOrgtrRole")]
#[cfg_attr(feature = "serde", serde(rename = "TradOrgtrRole"))]
pub trad_orgtr_role: TradeOriginator4Choice,
#[yaserde(rename = "TpOfPric")]
#[cfg_attr(feature = "serde", serde(rename = "TpOfPric"))]
pub tp_of_pric: TypeOfPrice32Choice,
#[yaserde(rename = "CcyToBuyOrSell")]
#[cfg_attr(feature = "serde", serde(rename = "CcyToBuyOrSell"))]
pub ccy_to_buy_or_sell: CurrencyToBuyOrSell1Choice,
#[yaserde(rename = "MtchgSts")]
#[cfg_attr(feature = "serde", serde(rename = "MtchgSts"))]
pub mtchg_sts: MatchingStatus28Choice,
#[yaserde(rename = "AffirmSts")]
#[cfg_attr(feature = "serde", serde(rename = "AffirmSts"))]
pub affirm_sts: AffirmationStatus9Choice,
#[yaserde(rename = "FxAddtlDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FxAddtlDtls"))]
pub fx_addtl_dtls: RestrictedFINXMax350Text,
#[yaserde(rename = "SttlmInstrPrcgAddtlDtls")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmInstrPrcgAddtlDtls"))]
pub sttlm_instr_prcg_addtl_dtls: RestrictedFINXMax350Text,
}
impl Validate for SecuritiesTradeDetails131 {}
#[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:sese.023.002.11")]
pub enum SecuritiesTransactionType23Code {
#[yaserde(rename = "BSBK")]
#[cfg_attr(feature = "serde", serde(rename = "BSBK"))]
Bsbk,
#[yaserde(rename = "COLI")]
#[cfg_attr(feature = "serde", serde(rename = "COLI"))]
Coli,
#[yaserde(rename = "COLO")]
#[cfg_attr(feature = "serde", serde(rename = "COLO"))]
Colo,
#[yaserde(rename = "MKDW")]
#[cfg_attr(feature = "serde", serde(rename = "MKDW"))]
Mkdw,
#[yaserde(rename = "MKUP")]
#[cfg_attr(feature = "serde", serde(rename = "MKUP"))]
Mkup,
#[yaserde(rename = "NETT")]
#[cfg_attr(feature = "serde", serde(rename = "NETT"))]
Nett,
#[yaserde(rename = "NSYN")]
#[cfg_attr(feature = "serde", serde(rename = "NSYN"))]
Nsyn,
#[yaserde(rename = "PAIR")]
#[cfg_attr(feature = "serde", serde(rename = "PAIR"))]
Pair,
#[yaserde(rename = "PLAC")]
#[cfg_attr(feature = "serde", serde(rename = "PLAC"))]
Plac,
#[yaserde(rename = "PORT")]
#[cfg_attr(feature = "serde", serde(rename = "PORT"))]
Port,
#[yaserde(rename = "REAL")]
#[cfg_attr(feature = "serde", serde(rename = "REAL"))]
Real,
#[yaserde(rename = "REDM")]
#[cfg_attr(feature = "serde", serde(rename = "REDM"))]
Redm,
#[yaserde(rename = "REPU")]
#[cfg_attr(feature = "serde", serde(rename = "REPU"))]
Repu,
#[yaserde(rename = "RODE")]
#[cfg_attr(feature = "serde", serde(rename = "RODE"))]
Rode,
#[yaserde(rename = "RVPO")]
#[cfg_attr(feature = "serde", serde(rename = "RVPO"))]
Rvpo,
#[yaserde(rename = "SECB")]
#[cfg_attr(feature = "serde", serde(rename = "SECB"))]
Secb,
#[yaserde(rename = "SECL")]
#[cfg_attr(feature = "serde", serde(rename = "SECL"))]
Secl,
#[yaserde(rename = "SUBS")]
#[cfg_attr(feature = "serde", serde(rename = "SUBS"))]
Subs,
#[yaserde(rename = "SYND")]
#[cfg_attr(feature = "serde", serde(rename = "SYND"))]
Synd,
#[yaserde(rename = "TBAC")]
#[cfg_attr(feature = "serde", serde(rename = "TBAC"))]
Tbac,
#[yaserde(rename = "TRAD")]
#[cfg_attr(feature = "serde", serde(rename = "TRAD"))]
Trad,
#[yaserde(rename = "TRPO")]
#[cfg_attr(feature = "serde", serde(rename = "TRPO"))]
Trpo,
#[yaserde(rename = "TRVO")]
#[cfg_attr(feature = "serde", serde(rename = "TRVO"))]
Trvo,
#[yaserde(rename = "TURN")]
#[cfg_attr(feature = "serde", serde(rename = "TURN"))]
Turn,
#[yaserde(rename = "BYIY")]
#[cfg_attr(feature = "serde", serde(rename = "BYIY"))]
Byiy,
#[yaserde(rename = "CNCB")]
#[cfg_attr(feature = "serde", serde(rename = "CNCB"))]
Cncb,
#[yaserde(rename = "OWNE")]
#[cfg_attr(feature = "serde", serde(rename = "OWNE"))]
Owne,
#[yaserde(rename = "FCTA")]
#[cfg_attr(feature = "serde", serde(rename = "FCTA"))]
Fcta,
#[yaserde(rename = "OWNI")]
#[cfg_attr(feature = "serde", serde(rename = "OWNI"))]
Owni,
#[yaserde(rename = "RELE")]
#[cfg_attr(feature = "serde", serde(rename = "RELE"))]
Rele,
#[yaserde(rename = "SBRE")]
#[cfg_attr(feature = "serde", serde(rename = "SBRE"))]
Sbre,
#[yaserde(rename = "CORP")]
#[cfg_attr(feature = "serde", serde(rename = "CORP"))]
Corp,
#[yaserde(rename = "CLAI")]
#[cfg_attr(feature = "serde", serde(rename = "CLAI"))]
Clai,
#[yaserde(rename = "AUTO")]
#[cfg_attr(feature = "serde", serde(rename = "AUTO"))]
Auto,
#[yaserde(rename = "SWIF")]
#[cfg_attr(feature = "serde", serde(rename = "SWIF"))]
Swif,
#[yaserde(rename = "SWIT")]
#[cfg_attr(feature = "serde", serde(rename = "SWIT"))]
Swit,
#[yaserde(rename = "CONV")]
#[cfg_attr(feature = "serde", serde(rename = "CONV"))]
Conv,
#[yaserde(rename = "ETFT")]
#[cfg_attr(feature = "serde", serde(rename = "ETFT"))]
Etft,
#[yaserde(rename = "ISSU")]
#[cfg_attr(feature = "serde", serde(rename = "ISSU"))]
Issu,
#[yaserde(rename = "SLRE")]
#[cfg_attr(feature = "serde", serde(rename = "SLRE"))]
Slre,
#[yaserde(rename = "INSP")]
#[cfg_attr(feature = "serde", serde(rename = "INSP"))]
Insp,
#[yaserde(rename = "SBBK")]
#[cfg_attr(feature = "serde", serde(rename = "SBBK"))]
Sbbk,
#[yaserde(rename = "REDI")]
#[cfg_attr(feature = "serde", serde(rename = "REDI"))]
Redi,
__Unknown__(String),
}
impl Default for SecuritiesTransactionType23Code {
fn default() -> SecuritiesTransactionType23Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SecuritiesTransactionType23Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SecuritiesTransactionType53Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SecuritiesTransactionType23Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SecuritiesTransactionType53Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementDate20Choice {
#[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<SettlementDateCode9Choice>,
}
impl Validate for SettlementDate20Choice {}
#[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:sese.023.002.11")]
pub enum SettlementDate4Code {
#[yaserde(rename = "WISS")]
#[cfg_attr(feature = "serde", serde(rename = "WISS"))]
Wiss,
__Unknown__(String),
}
impl Default for SettlementDate4Code {
fn default() -> SettlementDate4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementDate4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementDateCode9Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlementDate4Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SettlementDateCode9Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementDetails207 {
#[yaserde(rename = "HldInd")]
#[cfg_attr(feature = "serde", serde(rename = "HldInd"))]
pub hld_ind: HoldIndicator7,
#[yaserde(rename = "Prty")]
#[cfg_attr(feature = "serde", serde(rename = "Prty"))]
pub prty: PriorityNumeric5Choice,
#[yaserde(rename = "SctiesTxTp")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesTxTp"))]
pub scties_tx_tp: SecuritiesTransactionType53Choice,
#[yaserde(rename = "SttlmTxCond")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmTxCond"))]
pub sttlm_tx_cond: Vec<SettlementTransactionCondition39Choice>,
#[yaserde(rename = "PrtlSttlmInd")]
#[cfg_attr(feature = "serde", serde(rename = "PrtlSttlmInd"))]
pub prtl_sttlm_ind: SettlementTransactionCondition5Code,
#[yaserde(rename = "BnfclOwnrsh")]
#[cfg_attr(feature = "serde", serde(rename = "BnfclOwnrsh"))]
pub bnfcl_ownrsh: BeneficialOwnership5Choice,
#[yaserde(rename = "BlckTrad")]
#[cfg_attr(feature = "serde", serde(rename = "BlckTrad"))]
pub blck_trad: BlockTrade5Choice,
#[yaserde(rename = "CCPElgblty")]
#[cfg_attr(feature = "serde", serde(rename = "CCPElgblty"))]
pub ccp_elgblty: CentralCounterPartyEligibility5Choice,
#[yaserde(rename = "DlvryRtrRsn")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryRtrRsn"))]
pub dlvry_rtr_rsn: DeliveryReturn4Choice,
#[yaserde(rename = "CshClrSys")]
#[cfg_attr(feature = "serde", serde(rename = "CshClrSys"))]
pub csh_clr_sys: CashSettlementSystem5Choice,
#[yaserde(rename = "XpsrTp")]
#[cfg_attr(feature = "serde", serde(rename = "XpsrTp"))]
pub xpsr_tp: ExposureType24Choice,
#[yaserde(rename = "FxStgInstr")]
#[cfg_attr(feature = "serde", serde(rename = "FxStgInstr"))]
pub fx_stg_instr: FxstandingInstruction5Choice,
#[yaserde(rename = "MktClntSd")]
#[cfg_attr(feature = "serde", serde(rename = "MktClntSd"))]
pub mkt_clnt_sd: MarketClientSide7Choice,
#[yaserde(rename = "NetgElgblty")]
#[cfg_attr(feature = "serde", serde(rename = "NetgElgblty"))]
pub netg_elgblty: NettingEligibility5Choice,
#[yaserde(rename = "Regn")]
#[cfg_attr(feature = "serde", serde(rename = "Regn"))]
pub regn: Registration11Choice,
#[yaserde(rename = "RpTp")]
#[cfg_attr(feature = "serde", serde(rename = "RpTp"))]
pub rp_tp: RepurchaseType26Choice,
#[yaserde(rename = "LglRstrctns")]
#[cfg_attr(feature = "serde", serde(rename = "LglRstrctns"))]
pub lgl_rstrctns: Restriction6Choice,
#[yaserde(rename = "SctiesRTGS")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesRTGS"))]
pub scties_rtgs: SecuritiesRTGS5Choice,
#[yaserde(rename = "SttlgCpcty")]
#[cfg_attr(feature = "serde", serde(rename = "SttlgCpcty"))]
pub sttlg_cpcty: SettlingCapacity8Choice,
#[yaserde(rename = "SttlmSysMtd")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmSysMtd"))]
pub sttlm_sys_mtd: SettlementSystemMethod5Choice,
#[yaserde(rename = "TaxCpcty")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCpcty"))]
pub tax_cpcty: TaxCapacityParty5Choice,
#[yaserde(rename = "StmpDtyTaxBsis")]
#[cfg_attr(feature = "serde", serde(rename = "StmpDtyTaxBsis"))]
pub stmp_dty_tax_bsis: GenericIdentification47,
#[yaserde(rename = "Trckg")]
#[cfg_attr(feature = "serde", serde(rename = "Trckg"))]
pub trckg: Tracking5Choice,
#[yaserde(rename = "AutomtcBrrwg")]
#[cfg_attr(feature = "serde", serde(rename = "AutomtcBrrwg"))]
pub automtc_brrwg: AutomaticBorrowing8Choice,
#[yaserde(rename = "LttrOfGrnt")]
#[cfg_attr(feature = "serde", serde(rename = "LttrOfGrnt"))]
pub lttr_of_grnt: LetterOfGuarantee5Choice,
#[yaserde(rename = "RtrLeg")]
#[cfg_attr(feature = "serde", serde(rename = "RtrLeg"))]
pub rtr_leg: YesNoIndicator,
#[yaserde(rename = "ModCxlAllwd")]
#[cfg_attr(feature = "serde", serde(rename = "ModCxlAllwd"))]
pub mod_cxl_allwd: ModificationCancellationAllowed5Choice,
#[yaserde(rename = "ElgblForColl")]
#[cfg_attr(feature = "serde", serde(rename = "ElgblForColl"))]
pub elgbl_for_coll: YesNoIndicator,
#[yaserde(rename = "DlvrgSctiesSubBalTp")]
#[cfg_attr(feature = "serde", serde(rename = "DlvrgSctiesSubBalTp"))]
pub dlvrg_scties_sub_bal_tp: GenericIdentification30,
#[yaserde(rename = "RcvgSctiesSubBalTp")]
#[cfg_attr(feature = "serde", serde(rename = "RcvgSctiesSubBalTp"))]
pub rcvg_scties_sub_bal_tp: GenericIdentification30,
#[yaserde(rename = "CshSubBalTp")]
#[cfg_attr(feature = "serde", serde(rename = "CshSubBalTp"))]
pub csh_sub_bal_tp: GenericIdentification47,
}
impl Validate for SettlementDetails207 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementParties105 {
#[yaserde(rename = "Dpstry")]
#[cfg_attr(feature = "serde", serde(rename = "Dpstry"))]
pub dpstry: PartyIdentification162,
#[yaserde(rename = "Pty1")]
#[cfg_attr(feature = "serde", serde(rename = "Pty1"))]
pub pty_1: PartyIdentificationAndAccount206,
#[yaserde(rename = "Pty2")]
#[cfg_attr(feature = "serde", serde(rename = "Pty2"))]
pub pty_2: PartyIdentificationAndAccount206,
#[yaserde(rename = "Pty3")]
#[cfg_attr(feature = "serde", serde(rename = "Pty3"))]
pub pty_3: PartyIdentificationAndAccount206,
#[yaserde(rename = "Pty4")]
#[cfg_attr(feature = "serde", serde(rename = "Pty4"))]
pub pty_4: PartyIdentificationAndAccount206,
#[yaserde(rename = "Pty5")]
#[cfg_attr(feature = "serde", serde(rename = "Pty5"))]
pub pty_5: PartyIdentificationAndAccount206,
}
impl Validate for SettlementParties105 {}
#[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:sese.023.002.11")]
pub enum SettlementStandingInstructionDatabase1Code {
#[yaserde(rename = "INTE")]
#[cfg_attr(feature = "serde", serde(rename = "INTE"))]
Inte,
#[yaserde(rename = "BRKR")]
#[cfg_attr(feature = "serde", serde(rename = "BRKR"))]
Brkr,
#[yaserde(rename = "VEND")]
#[cfg_attr(feature = "serde", serde(rename = "VEND"))]
Vend,
__Unknown__(String),
}
impl Default for SettlementStandingInstructionDatabase1Code {
fn default() -> SettlementStandingInstructionDatabase1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementStandingInstructionDatabase1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementStandingInstructionDatabase5Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlementStandingInstructionDatabase1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SettlementStandingInstructionDatabase5Choice {}
#[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:sese.023.002.11")]
pub enum SettlementSystemMethod1Code {
#[yaserde(rename = "NSET")]
#[cfg_attr(feature = "serde", serde(rename = "NSET"))]
Nset,
#[yaserde(rename = "YSET")]
#[cfg_attr(feature = "serde", serde(rename = "YSET"))]
Yset,
__Unknown__(String),
}
impl Default for SettlementSystemMethod1Code {
fn default() -> SettlementSystemMethod1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementSystemMethod1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementSystemMethod5Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlementSystemMethod1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SettlementSystemMethod5Choice {}
#[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:sese.023.002.11")]
pub enum SettlementTransactionCondition14Code {
#[yaserde(rename = "ADEA")]
#[cfg_attr(feature = "serde", serde(rename = "ADEA"))]
Adea,
#[yaserde(rename = "ASGN")]
#[cfg_attr(feature = "serde", serde(rename = "ASGN"))]
Asgn,
#[yaserde(rename = "BUTC")]
#[cfg_attr(feature = "serde", serde(rename = "BUTC"))]
Butc,
#[yaserde(rename = "CLEN")]
#[cfg_attr(feature = "serde", serde(rename = "CLEN"))]
Clen,
#[yaserde(rename = "DLWM")]
#[cfg_attr(feature = "serde", serde(rename = "DLWM"))]
Dlwm,
#[yaserde(rename = "DIRT")]
#[cfg_attr(feature = "serde", serde(rename = "DIRT"))]
Dirt,
#[yaserde(rename = "DRAW")]
#[cfg_attr(feature = "serde", serde(rename = "DRAW"))]
Draw,
#[yaserde(rename = "EXER")]
#[cfg_attr(feature = "serde", serde(rename = "EXER"))]
Exer,
#[yaserde(rename = "EXPI")]
#[cfg_attr(feature = "serde", serde(rename = "EXPI"))]
Expi,
#[yaserde(rename = "FRCL")]
#[cfg_attr(feature = "serde", serde(rename = "FRCL"))]
Frcl,
#[yaserde(rename = "KNOC")]
#[cfg_attr(feature = "serde", serde(rename = "KNOC"))]
Knoc,
#[yaserde(rename = "NOMC")]
#[cfg_attr(feature = "serde", serde(rename = "NOMC"))]
Nomc,
#[yaserde(rename = "NACT")]
#[cfg_attr(feature = "serde", serde(rename = "NACT"))]
Nact,
#[yaserde(rename = "PENS")]
#[cfg_attr(feature = "serde", serde(rename = "PENS"))]
Pens,
#[yaserde(rename = "PHYS")]
#[cfg_attr(feature = "serde", serde(rename = "PHYS"))]
Phys,
#[yaserde(rename = "RHYP")]
#[cfg_attr(feature = "serde", serde(rename = "RHYP"))]
Rhyp,
#[yaserde(rename = "RPTO")]
#[cfg_attr(feature = "serde", serde(rename = "RPTO"))]
Rpto,
#[yaserde(rename = "RESI")]
#[cfg_attr(feature = "serde", serde(rename = "RESI"))]
Resi,
#[yaserde(rename = "SHOR")]
#[cfg_attr(feature = "serde", serde(rename = "SHOR"))]
Shor,
#[yaserde(rename = "SPDL")]
#[cfg_attr(feature = "serde", serde(rename = "SPDL"))]
Spdl,
#[yaserde(rename = "SPST")]
#[cfg_attr(feature = "serde", serde(rename = "SPST"))]
Spst,
#[yaserde(rename = "TRAN")]
#[cfg_attr(feature = "serde", serde(rename = "TRAN"))]
Tran,
#[yaserde(rename = "TRIP")]
#[cfg_attr(feature = "serde", serde(rename = "TRIP"))]
Trip,
#[yaserde(rename = "UNEX")]
#[cfg_attr(feature = "serde", serde(rename = "UNEX"))]
Unex,
#[yaserde(rename = "BPSS")]
#[cfg_attr(feature = "serde", serde(rename = "BPSS"))]
Bpss,
__Unknown__(String),
}
impl Default for SettlementTransactionCondition14Code {
fn default() -> SettlementTransactionCondition14Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementTransactionCondition14Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementTransactionCondition39Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlementTransactionCondition14Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SettlementTransactionCondition39Choice {}
#[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:sese.023.002.11")]
pub enum SettlementTransactionCondition5Code {
#[yaserde(rename = "PART")]
#[cfg_attr(feature = "serde", serde(rename = "PART"))]
Part,
#[yaserde(rename = "NPAR")]
#[cfg_attr(feature = "serde", serde(rename = "NPAR"))]
Npar,
#[yaserde(rename = "PARC")]
#[cfg_attr(feature = "serde", serde(rename = "PARC"))]
Parc,
#[yaserde(rename = "PARQ")]
#[cfg_attr(feature = "serde", serde(rename = "PARQ"))]
Parq,
__Unknown__(String),
}
impl Default for SettlementTransactionCondition5Code {
fn default() -> SettlementTransactionCondition5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementTransactionCondition5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlementTypeAndAdditionalParameters22 {
#[yaserde(rename = "SctiesMvmntTp")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesMvmntTp"))]
pub scties_mvmnt_tp: ReceiveDelivery1Code,
#[yaserde(rename = "Pmt")]
#[cfg_attr(feature = "serde", serde(rename = "Pmt"))]
pub pmt: DeliveryReceiptType2Code,
#[yaserde(rename = "CmonId")]
#[cfg_attr(feature = "serde", serde(rename = "CmonId"))]
pub cmon_id: RestrictedFINXMax16Text,
#[yaserde(rename = "CorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnEvtId"))]
pub corp_actn_evt_id: RestrictedFINXMax16Text,
#[yaserde(rename = "RcncltnInd")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnInd"))]
pub rcncltn_ind: YesNoIndicator,
#[yaserde(rename = "ClntCollInstrId")]
#[cfg_attr(feature = "serde", serde(rename = "ClntCollInstrId"))]
pub clnt_coll_instr_id: RestrictedFINXMax16Text,
#[yaserde(rename = "ClntTrptyCollTxId")]
#[cfg_attr(feature = "serde", serde(rename = "ClntTrptyCollTxId"))]
pub clnt_trpty_coll_tx_id: RestrictedFINXMax16Text,
#[yaserde(rename = "TrptyAgtSvcPrvdrCollTxId")]
#[cfg_attr(feature = "serde", serde(rename = "TrptyAgtSvcPrvdrCollTxId"))]
pub trpty_agt_svc_prvdr_coll_tx_id: RestrictedFINXMax16Text,
#[yaserde(rename = "TrptyAgtSvcPrvdrCollInstrId")]
#[cfg_attr(feature = "serde", serde(rename = "TrptyAgtSvcPrvdrCollInstrId"))]
pub trpty_agt_svc_prvdr_coll_instr_id: RestrictedFINXMax16Text,
}
impl Validate for SettlementTypeAndAdditionalParameters22 {}
#[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:sese.023.002.11")]
pub enum SettlingCapacity2Code {
#[yaserde(rename = "SAGE")]
#[cfg_attr(feature = "serde", serde(rename = "SAGE"))]
Sage,
#[yaserde(rename = "CUST")]
#[cfg_attr(feature = "serde", serde(rename = "CUST"))]
Cust,
#[yaserde(rename = "SPRI")]
#[cfg_attr(feature = "serde", serde(rename = "SPRI"))]
Spri,
#[yaserde(rename = "RISP")]
#[cfg_attr(feature = "serde", serde(rename = "RISP"))]
Risp,
__Unknown__(String),
}
impl Default for SettlingCapacity2Code {
fn default() -> SettlingCapacity2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlingCapacity2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct SettlingCapacity8Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlingCapacity2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for SettlingCapacity8Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct StandingSettlementInstruction19 {
#[yaserde(rename = "SttlmStgInstrDB")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmStgInstrDB"))]
pub sttlm_stg_instr_db: SettlementStandingInstructionDatabase5Choice,
#[yaserde(rename = "CtrPty")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPty"))]
pub ctr_pty: Counterparty16Choice,
#[yaserde(rename = "Vndr")]
#[cfg_attr(feature = "serde", serde(rename = "Vndr"))]
pub vndr: PartyIdentification157,
#[yaserde(rename = "OthrDlvrgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "OthrDlvrgSttlmPties"))]
pub othr_dlvrg_sttlm_pties: SettlementParties105,
#[yaserde(rename = "OthrRcvgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "OthrRcvgSttlmPties"))]
pub othr_rcvg_sttlm_pties: SettlementParties105,
}
impl Validate for StandingSettlementInstruction19 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
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:sese.023.002.11")]
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:sese.023.002.11")]
pub struct TaxCapacityParty5Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<TaxLiability1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for TaxCapacityParty5Choice {}
#[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:sese.023.002.11")]
pub enum TaxLiability1Code {
#[yaserde(rename = "PRIN")]
#[cfg_attr(feature = "serde", serde(rename = "PRIN"))]
Prin,
#[yaserde(rename = "AGEN")]
#[cfg_attr(feature = "serde", serde(rename = "AGEN"))]
Agen,
__Unknown__(String),
}
impl Default for TaxLiability1Code {
fn default() -> TaxLiability1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TaxLiability1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct TotalNumber2 {
#[yaserde(rename = "CurInstrNb")]
#[cfg_attr(feature = "serde", serde(rename = "CurInstrNb"))]
pub cur_instr_nb: Max6NumericText,
#[yaserde(rename = "TtlOfLkdInstrs")]
#[cfg_attr(feature = "serde", serde(rename = "TtlOfLkdInstrs"))]
pub ttl_of_lkd_instrs: Max6NumericText,
}
impl Validate for TotalNumber2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct Tracking5Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for Tracking5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct TradeDate9Choice {
#[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<TradeDateCode4Choice>,
}
impl Validate for TradeDate9Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct TradeDateCode4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DateType3Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for TradeDateCode4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct TradeOriginator4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OriginatorRole2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for TradeOriginator4Choice {}
#[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:sese.023.002.11")]
pub enum TradeTransactionCondition4Code {
#[yaserde(rename = "CBNS")]
#[cfg_attr(feature = "serde", serde(rename = "CBNS"))]
Cbns,
#[yaserde(rename = "XBNS")]
#[cfg_attr(feature = "serde", serde(rename = "XBNS"))]
Xbns,
#[yaserde(rename = "CCPN")]
#[cfg_attr(feature = "serde", serde(rename = "CCPN"))]
Ccpn,
#[yaserde(rename = "XCPN")]
#[cfg_attr(feature = "serde", serde(rename = "XCPN"))]
Xcpn,
#[yaserde(rename = "CDIV")]
#[cfg_attr(feature = "serde", serde(rename = "CDIV"))]
Cdiv,
#[yaserde(rename = "XDIV")]
#[cfg_attr(feature = "serde", serde(rename = "XDIV"))]
Xdiv,
#[yaserde(rename = "CRTS")]
#[cfg_attr(feature = "serde", serde(rename = "CRTS"))]
Crts,
#[yaserde(rename = "XRTS")]
#[cfg_attr(feature = "serde", serde(rename = "XRTS"))]
Xrts,
#[yaserde(rename = "CWAR")]
#[cfg_attr(feature = "serde", serde(rename = "CWAR"))]
Cwar,
#[yaserde(rename = "XWAR")]
#[cfg_attr(feature = "serde", serde(rename = "XWAR"))]
Xwar,
#[yaserde(rename = "SPCU")]
#[cfg_attr(feature = "serde", serde(rename = "SPCU"))]
Spcu,
#[yaserde(rename = "SPEX")]
#[cfg_attr(feature = "serde", serde(rename = "SPEX"))]
Spex,
#[yaserde(rename = "GTDL")]
#[cfg_attr(feature = "serde", serde(rename = "GTDL"))]
Gtdl,
#[yaserde(rename = "BCRO")]
#[cfg_attr(feature = "serde", serde(rename = "BCRO"))]
Bcro,
#[yaserde(rename = "BCRP")]
#[cfg_attr(feature = "serde", serde(rename = "BCRP"))]
Bcrp,
#[yaserde(rename = "BCFD")]
#[cfg_attr(feature = "serde", serde(rename = "BCFD"))]
Bcfd,
#[yaserde(rename = "BCBL")]
#[cfg_attr(feature = "serde", serde(rename = "BCBL"))]
Bcbl,
#[yaserde(rename = "BCBN")]
#[cfg_attr(feature = "serde", serde(rename = "BCBN"))]
Bcbn,
#[yaserde(rename = "MAPR")]
#[cfg_attr(feature = "serde", serde(rename = "MAPR"))]
Mapr,
#[yaserde(rename = "NEGO")]
#[cfg_attr(feature = "serde", serde(rename = "NEGO"))]
Nego,
#[yaserde(rename = "NMPR")]
#[cfg_attr(feature = "serde", serde(rename = "NMPR"))]
Nmpr,
#[yaserde(rename = "BCPD")]
#[cfg_attr(feature = "serde", serde(rename = "BCPD"))]
Bcpd,
__Unknown__(String),
}
impl Default for TradeTransactionCondition4Code {
fn default() -> TradeTransactionCondition4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TradeTransactionCondition4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct TradeTransactionCondition6Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<TradeTransactionCondition4Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for TradeTransactionCondition6Choice {}
#[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:sese.023.002.11")]
pub enum TypeOfIdentification1Code {
#[yaserde(rename = "ARNU")]
#[cfg_attr(feature = "serde", serde(rename = "ARNU"))]
Arnu,
#[yaserde(rename = "CCPT")]
#[cfg_attr(feature = "serde", serde(rename = "CCPT"))]
Ccpt,
#[yaserde(rename = "CHTY")]
#[cfg_attr(feature = "serde", serde(rename = "CHTY"))]
Chty,
#[yaserde(rename = "CORP")]
#[cfg_attr(feature = "serde", serde(rename = "CORP"))]
Corp,
#[yaserde(rename = "DRLC")]
#[cfg_attr(feature = "serde", serde(rename = "DRLC"))]
Drlc,
#[yaserde(rename = "FIIN")]
#[cfg_attr(feature = "serde", serde(rename = "FIIN"))]
Fiin,
#[yaserde(rename = "TXID")]
#[cfg_attr(feature = "serde", serde(rename = "TXID"))]
Txid,
__Unknown__(String),
}
impl Default for TypeOfIdentification1Code {
fn default() -> TypeOfIdentification1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TypeOfIdentification1Code {}
#[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:sese.023.002.11")]
pub enum TypeOfPrice14Code {
#[yaserde(rename = "AVER")]
#[cfg_attr(feature = "serde", serde(rename = "AVER"))]
Aver,
__Unknown__(String),
}
impl Default for TypeOfPrice14Code {
fn default() -> TypeOfPrice14Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TypeOfPrice14Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct TypeOfPrice32Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<TypeOfPrice14Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification47>,
}
impl Validate for TypeOfPrice32Choice {}
#[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 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct YieldedOrValueType1Choice {
#[yaserde(rename = "Yldd")]
#[cfg_attr(feature = "serde", serde(rename = "Yldd"))]
pub yldd: Option<YesNoIndicator>,
#[yaserde(rename = "ValTp")]
#[cfg_attr(feature = "serde", serde(rename = "ValTp"))]
pub val_tp: Option<PriceValueType1Code>,
}
impl Validate for YieldedOrValueType1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:sese.023.002.11")]
pub struct YieldedOrValueType2Choice {
#[yaserde(rename = "Yldd")]
#[cfg_attr(feature = "serde", serde(rename = "Yldd"))]
pub yldd: Option<YesNoIndicator>,
#[yaserde(rename = "ValTp")]
#[cfg_attr(feature = "serde", serde(rename = "ValTp"))]
pub val_tp: Option<PriceValueType12Code>,
}
impl Validate for YieldedOrValueType2Choice {}
impl crate::MxMessage for Document {
const BUSINESS_AREA: crate::BusinessArea = crate::BusinessArea::sese;
const FUNCTIONALITY: &'static str = "023";
const VARIANT: &'static str = "002";
const VERSION: &'static str = "11";
const MESSAGE_NAME: &'static str = "sese.023.002.11";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:sese.023.002.11";
}