#![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 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 ActiveOrHistoricCurrencyAnd19DecimalAmountSimpleType (pub String);
crate::simple_type!(ActiveOrHistoricCurrencyAnd19DecimalAmountSimpleType);
impl Validate for ActiveOrHistoricCurrencyAnd19DecimalAmountSimpleType {
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:auth.030.001.02")]
pub struct ActiveOrHistoricCurrencyAnd19DecimalAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
}
impl Validate for ActiveOrHistoricCurrencyAnd19DecimalAmount {}
#[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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct AgreementType2Choice {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Option<ExternalAgreementType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max50Text>,
}
impl Validate for AgreementType2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct AmountAndDirection106 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveOrHistoricCurrencyAnd19DecimalAmount,
#[yaserde(rename = "Sgn")]
#[cfg_attr(feature = "serde", serde(rename = "Sgn"))]
pub sgn: PlusOrMinusIndicator,
}
impl Validate for AmountAndDirection106 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct AnyBICDec2014Identifier (pub String);
crate::simple_type!(AnyBICDec2014Identifier);
impl Validate for AnyBICDec2014Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct AssetClassCommodity2Choice {
#[yaserde(rename = "Agrcltrl")]
#[cfg_attr(feature = "serde", serde(rename = "Agrcltrl"))]
pub agrcltrl: Option<AssetClassSubProductAgriculturalType1Code>,
#[yaserde(rename = "Nrgy")]
#[cfg_attr(feature = "serde", serde(rename = "Nrgy"))]
pub nrgy: Option<AssetClassSubProductEnergyType1Code>,
#[yaserde(rename = "Envttl")]
#[cfg_attr(feature = "serde", serde(rename = "Envttl"))]
pub envttl: Option<AssetClassSubProductEnvironmentalType1Code>,
#[yaserde(rename = "Frght")]
#[cfg_attr(feature = "serde", serde(rename = "Frght"))]
pub frght: Option<AssetClassSubProductFreight1Code>,
#[yaserde(rename = "Indx")]
#[cfg_attr(feature = "serde", serde(rename = "Indx"))]
pub indx: Option<NoReasonCode>,
#[yaserde(rename = "Metl")]
#[cfg_attr(feature = "serde", serde(rename = "Metl"))]
pub metl: Option<AssetClassSubProductMetal1Code>,
#[yaserde(rename = "Extc")]
#[cfg_attr(feature = "serde", serde(rename = "Extc"))]
pub extc: Option<NoReasonCode>,
#[yaserde(rename = "Othr")]
#[cfg_attr(feature = "serde", serde(rename = "Othr"))]
pub othr: Option<NoReasonCode>,
}
impl Validate for AssetClassCommodity2Choice {}
#[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:auth.030.001.02")]
pub enum AssetClassSubProductAgriculturalType1Code {
#[yaserde(rename = "DIRY")]
#[cfg_attr(feature = "serde", serde(rename = "DIRY"))]
Diry,
#[yaserde(rename = "FRST")]
#[cfg_attr(feature = "serde", serde(rename = "FRST"))]
Frst,
#[yaserde(rename = "GROS")]
#[cfg_attr(feature = "serde", serde(rename = "GROS"))]
Gros,
#[yaserde(rename = "LSTK")]
#[cfg_attr(feature = "serde", serde(rename = "LSTK"))]
Lstk,
#[yaserde(rename = "SOFT")]
#[cfg_attr(feature = "serde", serde(rename = "SOFT"))]
Soft,
#[yaserde(rename = "SEAF")]
#[cfg_attr(feature = "serde", serde(rename = "SEAF"))]
Seaf,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for AssetClassSubProductAgriculturalType1Code {
fn default() -> AssetClassSubProductAgriculturalType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AssetClassSubProductAgriculturalType1Code {}
#[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:auth.030.001.02")]
pub enum AssetClassSubProductEnergyType1Code {
#[yaserde(rename = "COAL")]
#[cfg_attr(feature = "serde", serde(rename = "COAL"))]
Coal,
#[yaserde(rename = "ELEC")]
#[cfg_attr(feature = "serde", serde(rename = "ELEC"))]
Elec,
#[yaserde(rename = "OILP")]
#[cfg_attr(feature = "serde", serde(rename = "OILP"))]
Oilp,
#[yaserde(rename = "INRG")]
#[cfg_attr(feature = "serde", serde(rename = "INRG"))]
Inrg,
#[yaserde(rename = "NGAS")]
#[cfg_attr(feature = "serde", serde(rename = "NGAS"))]
Ngas,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for AssetClassSubProductEnergyType1Code {
fn default() -> AssetClassSubProductEnergyType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AssetClassSubProductEnergyType1Code {}
#[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:auth.030.001.02")]
pub enum AssetClassSubProductEnvironmentalType1Code {
#[yaserde(rename = "EMIS")]
#[cfg_attr(feature = "serde", serde(rename = "EMIS"))]
Emis,
#[yaserde(rename = "WTHR")]
#[cfg_attr(feature = "serde", serde(rename = "WTHR"))]
Wthr,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for AssetClassSubProductEnvironmentalType1Code {
fn default() -> AssetClassSubProductEnvironmentalType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AssetClassSubProductEnvironmentalType1Code {}
#[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:auth.030.001.02")]
pub enum AssetClassSubProductFreight1Code {
#[yaserde(rename = "DRYF")]
#[cfg_attr(feature = "serde", serde(rename = "DRYF"))]
Dryf,
#[yaserde(rename = "WETF")]
#[cfg_attr(feature = "serde", serde(rename = "WETF"))]
Wetf,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for AssetClassSubProductFreight1Code {
fn default() -> AssetClassSubProductFreight1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AssetClassSubProductFreight1Code {}
#[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:auth.030.001.02")]
pub enum AssetClassSubProductMetal1Code {
#[yaserde(rename = "NPRM")]
#[cfg_attr(feature = "serde", serde(rename = "NPRM"))]
Nprm,
#[yaserde(rename = "PRME")]
#[cfg_attr(feature = "serde", serde(rename = "PRME"))]
Prme,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for AssetClassSubProductMetal1Code {
fn default() -> AssetClassSubProductMetal1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AssetClassSubProductMetal1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct BaseOne18Rate (pub String);
crate::simple_type!(BaseOne18Rate);
impl Validate for BaseOne18Rate {}
#[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:auth.030.001.02")]
pub struct BasketConstituents1 {
#[yaserde(rename = "InstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "InstrmId"))]
pub instrm_id: InstrumentIdentification1Choice,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: LongFraction19DecimalNumber,
#[yaserde(rename = "UnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "UnitOfMeasr"))]
pub unit_of_measr: UnitOfMeasure12Code,
}
impl Validate for BasketConstituents1 {}
#[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:auth.030.001.02")]
pub enum BenchmarkCurveName5Code {
#[yaserde(rename = "ESTR")]
#[cfg_attr(feature = "serde", serde(rename = "ESTR"))]
Estr,
#[yaserde(rename = "BBSW")]
#[cfg_attr(feature = "serde", serde(rename = "BBSW"))]
Bbsw,
#[yaserde(rename = "BUBO")]
#[cfg_attr(feature = "serde", serde(rename = "BUBO"))]
Bubo,
#[yaserde(rename = "CDOR")]
#[cfg_attr(feature = "serde", serde(rename = "CDOR"))]
Cdor,
#[yaserde(rename = "CIBO")]
#[cfg_attr(feature = "serde", serde(rename = "CIBO"))]
Cibo,
#[yaserde(rename = "EONA")]
#[cfg_attr(feature = "serde", serde(rename = "EONA"))]
Eona,
#[yaserde(rename = "EONS")]
#[cfg_attr(feature = "serde", serde(rename = "EONS"))]
Eons,
#[yaserde(rename = "EURI")]
#[cfg_attr(feature = "serde", serde(rename = "EURI"))]
Euri,
#[yaserde(rename = "EUUS")]
#[cfg_attr(feature = "serde", serde(rename = "EUUS"))]
Euus,
#[yaserde(rename = "EUCH")]
#[cfg_attr(feature = "serde", serde(rename = "EUCH"))]
Euch,
#[yaserde(rename = "FUSW")]
#[cfg_attr(feature = "serde", serde(rename = "FUSW"))]
Fusw,
#[yaserde(rename = "GCFR")]
#[cfg_attr(feature = "serde", serde(rename = "GCFR"))]
Gcfr,
#[yaserde(rename = "ISDA")]
#[cfg_attr(feature = "serde", serde(rename = "ISDA"))]
Isda,
#[yaserde(rename = "JIBA")]
#[cfg_attr(feature = "serde", serde(rename = "JIBA"))]
Jiba,
#[yaserde(rename = "LIBI")]
#[cfg_attr(feature = "serde", serde(rename = "LIBI"))]
Libi,
#[yaserde(rename = "LIBO")]
#[cfg_attr(feature = "serde", serde(rename = "LIBO"))]
Libo,
#[yaserde(rename = "MOSP")]
#[cfg_attr(feature = "serde", serde(rename = "MOSP"))]
Mosp,
#[yaserde(rename = "MAAA")]
#[cfg_attr(feature = "serde", serde(rename = "MAAA"))]
Maaa,
#[yaserde(rename = "NIBO")]
#[cfg_attr(feature = "serde", serde(rename = "NIBO"))]
Nibo,
#[yaserde(rename = "PFAN")]
#[cfg_attr(feature = "serde", serde(rename = "PFAN"))]
Pfan,
#[yaserde(rename = "PRBO")]
#[cfg_attr(feature = "serde", serde(rename = "PRBO"))]
Prbo,
#[yaserde(rename = "STBO")]
#[cfg_attr(feature = "serde", serde(rename = "STBO"))]
Stbo,
#[yaserde(rename = "SWAP")]
#[cfg_attr(feature = "serde", serde(rename = "SWAP"))]
Swap,
#[yaserde(rename = "TLBO")]
#[cfg_attr(feature = "serde", serde(rename = "TLBO"))]
Tlbo,
#[yaserde(rename = "TIBO")]
#[cfg_attr(feature = "serde", serde(rename = "TIBO"))]
Tibo,
#[yaserde(rename = "TREA")]
#[cfg_attr(feature = "serde", serde(rename = "TREA"))]
Trea,
#[yaserde(rename = "WIBO")]
#[cfg_attr(feature = "serde", serde(rename = "WIBO"))]
Wibo,
#[yaserde(rename = "SOFR")]
#[cfg_attr(feature = "serde", serde(rename = "SOFR"))]
Sofr,
#[yaserde(rename = "SONA")]
#[cfg_attr(feature = "serde", serde(rename = "SONA"))]
Sona,
#[yaserde(rename = "CZNA")]
#[cfg_attr(feature = "serde", serde(rename = "CZNA"))]
Czna,
#[yaserde(rename = "EFFR")]
#[cfg_attr(feature = "serde", serde(rename = "EFFR"))]
Effr,
#[yaserde(rename = "OBFR")]
#[cfg_attr(feature = "serde", serde(rename = "OBFR"))]
Obfr,
#[yaserde(rename = "BCOL")]
#[cfg_attr(feature = "serde", serde(rename = "BCOL"))]
Bcol,
#[yaserde(rename = "CORA")]
#[cfg_attr(feature = "serde", serde(rename = "CORA"))]
Cora,
__Unknown__(String),
}
impl Default for BenchmarkCurveName5Code {
fn default() -> BenchmarkCurveName5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for BenchmarkCurveName5Code {}
#[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:auth.030.001.02")]
pub struct Cleared12Choice {
#[yaserde(rename = "Clrd")]
#[cfg_attr(feature = "serde", serde(rename = "Clrd"))]
pub clrd: Option<ClearingPartyAndTime10>,
#[yaserde(rename = "IntndToClear")]
#[cfg_attr(feature = "serde", serde(rename = "IntndToClear"))]
pub intnd_to_clear: Option<ClearingPartyAndTime10>,
#[yaserde(rename = "NonClrd")]
#[cfg_attr(feature = "serde", serde(rename = "NonClrd"))]
pub non_clrd: Option<NoReasonCode>,
}
impl Validate for Cleared12Choice {}
#[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:auth.030.001.02")]
pub enum ClearingObligationType1Code {
#[yaserde(rename = "FLSE")]
#[cfg_attr(feature = "serde", serde(rename = "FLSE"))]
Flse,
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
#[yaserde(rename = "TRUE")]
#[cfg_attr(feature = "serde", serde(rename = "TRUE"))]
True,
__Unknown__(String),
}
impl Default for ClearingObligationType1Code {
fn default() -> ClearingObligationType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ClearingObligationType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct ClearingPartyAndTime10 {
#[yaserde(rename = "Rsn")]
#[cfg_attr(feature = "serde", serde(rename = "Rsn"))]
pub rsn: NoReasonCode,
#[yaserde(rename = "CCP")]
#[cfg_attr(feature = "serde", serde(rename = "CCP"))]
pub ccp: OrganisationIdentification10Choice,
#[yaserde(rename = "ClrDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "ClrDtTm"))]
pub clr_dt_tm: IsodateTime,
}
impl Validate for ClearingPartyAndTime10 {}
#[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:auth.030.001.02")]
pub enum CollateralisationType2Code {
#[yaserde(rename = "FLCL")]
#[cfg_attr(feature = "serde", serde(rename = "FLCL"))]
Flcl,
#[yaserde(rename = "OWC1")]
#[cfg_attr(feature = "serde", serde(rename = "OWC1"))]
Owc1,
#[yaserde(rename = "OWC2")]
#[cfg_attr(feature = "serde", serde(rename = "OWC2"))]
Owc2,
#[yaserde(rename = "OWP1")]
#[cfg_attr(feature = "serde", serde(rename = "OWP1"))]
Owp1,
#[yaserde(rename = "OWP2")]
#[cfg_attr(feature = "serde", serde(rename = "OWP2"))]
Owp2,
#[yaserde(rename = "PRCL")]
#[cfg_attr(feature = "serde", serde(rename = "PRCL"))]
Prcl,
#[yaserde(rename = "PRC1")]
#[cfg_attr(feature = "serde", serde(rename = "PRC1"))]
Prc1,
#[yaserde(rename = "PRC2")]
#[cfg_attr(feature = "serde", serde(rename = "PRC2"))]
Prc2,
#[yaserde(rename = "UNCL")]
#[cfg_attr(feature = "serde", serde(rename = "UNCL"))]
Uncl,
__Unknown__(String),
}
impl Default for CollateralisationType2Code {
fn default() -> CollateralisationType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CollateralisationType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct CommonTradeDataReport49 {
#[yaserde(rename = "CtrctData")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctData"))]
pub ctrct_data: ContractType10,
#[yaserde(rename = "TxData")]
#[cfg_attr(feature = "serde", serde(rename = "TxData"))]
pub tx_data: TradeTransaction37,
}
impl Validate for CommonTradeDataReport49 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct CommonTradeDataReport50 {
#[yaserde(rename = "CtrctData")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctData"))]
pub ctrct_data: ContractType10,
#[yaserde(rename = "TxData")]
#[cfg_attr(feature = "serde", serde(rename = "TxData"))]
pub tx_data: TradeTransaction37,
#[yaserde(rename = "CtrctMod")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctMod"))]
pub ctrct_mod: ContractModification4,
}
impl Validate for CommonTradeDataReport50 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct ContractModification4 {
#[yaserde(rename = "ActnTp")]
#[cfg_attr(feature = "serde", serde(rename = "ActnTp"))]
pub actn_tp: TransactionOperationType7Code,
#[yaserde(rename = "Lvl")]
#[cfg_attr(feature = "serde", serde(rename = "Lvl"))]
pub lvl: ModificationLevel1Code,
}
impl Validate for ContractModification4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct ContractType10 {
#[yaserde(rename = "CtrctTp")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctTp"))]
pub ctrct_tp: FinancialInstrumentContractType2Code,
#[yaserde(rename = "AsstClss")]
#[cfg_attr(feature = "serde", serde(rename = "AsstClss"))]
pub asst_clss: ProductType4Code,
#[yaserde(rename = "PdctClssfctn")]
#[cfg_attr(feature = "serde", serde(rename = "PdctClssfctn"))]
pub pdct_clssfctn: Cfioct2015Identifier,
#[yaserde(rename = "PdctId")]
#[cfg_attr(feature = "serde", serde(rename = "PdctId"))]
pub pdct_id: SecurityIdentification22,
#[yaserde(rename = "UndrlygInstrm")]
#[cfg_attr(feature = "serde", serde(rename = "UndrlygInstrm"))]
pub undrlyg_instrm: SecurityIdentification36Choice,
#[yaserde(rename = "NtnlCcy")]
#[cfg_attr(feature = "serde", serde(rename = "NtnlCcy"))]
pub ntnl_ccy: LegCurrency2,
#[yaserde(rename = "SttlmCcy")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmCcy"))]
pub sttlm_ccy: LegCurrency2,
#[yaserde(rename = "PlcOfSttlm")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfSttlm"))]
pub plc_of_sttlm: CountryCode,
}
impl Validate for ContractType10 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct ContractValuationData6 {
#[yaserde(rename = "CtrctVal")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctVal"))]
pub ctrct_val: AmountAndDirection106,
#[yaserde(rename = "TmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "TmStmp"))]
pub tm_stmp: IsodateTime,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: ValuationType1Code,
}
impl Validate for ContractValuationData6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Counterparty31 {
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: CountryCode,
#[yaserde(rename = "IdTp")]
#[cfg_attr(feature = "serde", serde(rename = "IdTp"))]
pub id_tp: PartyIdentification235Choice,
}
impl Validate for Counterparty31 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Counterparty34 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: OrganisationIdentification10Choice,
#[yaserde(rename = "Ntr")]
#[cfg_attr(feature = "serde", serde(rename = "Ntr"))]
pub ntr: CounterpartyTradeNature9Choice,
#[yaserde(rename = "TradgCpcty")]
#[cfg_attr(feature = "serde", serde(rename = "TradgCpcty"))]
pub tradg_cpcty: TradingCapacity7Code,
#[yaserde(rename = "Drctn")]
#[cfg_attr(feature = "serde", serde(rename = "Drctn"))]
pub drctn: Direction2Choice,
}
impl Validate for Counterparty34 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct CounterpartySpecificData29 {
#[yaserde(rename = "CtrPty")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPty"))]
pub ctr_pty: TradeCounterpartyReport14,
#[yaserde(rename = "Valtn")]
#[cfg_attr(feature = "serde", serde(rename = "Valtn"))]
pub valtn: ContractValuationData6,
#[yaserde(rename = "Coll")]
#[cfg_attr(feature = "serde", serde(rename = "Coll"))]
pub coll: TradeCollateralReport5,
#[yaserde(rename = "RptgTmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "RptgTmStmp"))]
pub rptg_tm_stmp: IsodateTime,
}
impl Validate for CounterpartySpecificData29 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct CounterpartyTradeNature9Choice {
#[yaserde(rename = "FI")]
#[cfg_attr(feature = "serde", serde(rename = "FI"))]
pub fi: Vec<FinancialPartySectorType1Code>,
#[yaserde(rename = "NFI")]
#[cfg_attr(feature = "serde", serde(rename = "NFI"))]
pub nfi: Option<NonFinancialInstitutionSector4>,
#[yaserde(rename = "CntrlCntrPty")]
#[cfg_attr(feature = "serde", serde(rename = "CntrlCntrPty"))]
pub cntrl_cntr_pty: Option<NoReasonCode>,
#[yaserde(rename = "Othr")]
#[cfg_attr(feature = "serde", serde(rename = "Othr"))]
pub othr: Option<NoReasonCode>,
}
impl Validate for CounterpartyTradeNature9Choice {}
#[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(Default, Clone, PartialEq, Debug)]
pub struct CountrySubDivisionCode (pub String);
crate::simple_type!(CountrySubDivisionCode);
impl Validate for CountrySubDivisionCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct CreditDerivative4 {
#[yaserde(rename = "Snrty")]
#[cfg_attr(feature = "serde", serde(rename = "Snrty"))]
pub snrty: DebtInstrumentSeniorityType2Code,
#[yaserde(rename = "RefPty")]
#[cfg_attr(feature = "serde", serde(rename = "RefPty"))]
pub ref_pty: DerivativePartyIdentification1Choice,
#[yaserde(rename = "PmtFrqcy")]
#[cfg_attr(feature = "serde", serde(rename = "PmtFrqcy"))]
pub pmt_frqcy: Frequency13Code,
#[yaserde(rename = "ClctnBsis")]
#[cfg_attr(feature = "serde", serde(rename = "ClctnBsis"))]
pub clctn_bsis: Max35Text,
#[yaserde(rename = "Srs")]
#[cfg_attr(feature = "serde", serde(rename = "Srs"))]
pub srs: Number,
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Number,
#[yaserde(rename = "IndxFctr")]
#[cfg_attr(feature = "serde", serde(rename = "IndxFctr"))]
pub indx_fctr: PercentageRate,
#[yaserde(rename = "Trch")]
#[cfg_attr(feature = "serde", serde(rename = "Trch"))]
pub trch: TrancheIndicator3Choice,
}
impl Validate for CreditDerivative4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct CurrencyExchange17 {
#[yaserde(rename = "DlvrblCrossCcy")]
#[cfg_attr(feature = "serde", serde(rename = "DlvrblCrossCcy"))]
pub dlvrbl_cross_ccy: ActiveOrHistoricCurrencyCode,
#[yaserde(rename = "XchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "XchgRate"))]
pub xchg_rate: BaseOne18Rate,
#[yaserde(rename = "FwdXchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "FwdXchgRate"))]
pub fwd_xchg_rate: BaseOne18Rate,
#[yaserde(rename = "XchgRateBsis")]
#[cfg_attr(feature = "serde", serde(rename = "XchgRateBsis"))]
pub xchg_rate_bsis: ExchangeRateBasis1Choice,
}
impl Validate for CurrencyExchange17 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct CustomBasket1 {
#[yaserde(rename = "Strr")]
#[cfg_attr(feature = "serde", serde(rename = "Strr"))]
pub strr: Leiidentifier,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max52Text,
#[yaserde(rename = "Cnsttnts")]
#[cfg_attr(feature = "serde", serde(rename = "Cnsttnts"))]
pub cnsttnts: Vec<BasketConstituents1>,
}
impl Validate for CustomBasket1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct DateTimePeriod1 {
#[yaserde(rename = "FrDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "FrDtTm"))]
pub fr_dt_tm: IsodateTime,
#[yaserde(rename = "ToDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "ToDtTm"))]
pub to_dt_tm: IsodateTime,
}
impl Validate for DateTimePeriod1 {}
#[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:auth.030.001.02")]
pub enum DebtInstrumentSeniorityType2Code {
#[yaserde(rename = "SBOD")]
#[cfg_attr(feature = "serde", serde(rename = "SBOD"))]
Sbod,
#[yaserde(rename = "SNDB")]
#[cfg_attr(feature = "serde", serde(rename = "SNDB"))]
Sndb,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for DebtInstrumentSeniorityType2Code {
fn default() -> DebtInstrumentSeniorityType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DebtInstrumentSeniorityType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct DeliveryInterconnectionPoint1Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Eicidentifier>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max52Text>,
}
impl Validate for DeliveryInterconnectionPoint1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct DerivativePartyIdentification1Choice {
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
#[yaserde(rename = "CtrySubDvsn")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsn"))]
pub ctry_sub_dvsn: Option<CountrySubDivisionCode>,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Option<Leiidentifier>,
}
impl Validate for DerivativePartyIdentification1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct DerivativesTradeReportV02 {
#[yaserde(rename = "RptHdr")]
#[cfg_attr(feature = "serde", serde(rename = "RptHdr"))]
pub rpt_hdr: TradeQueryHeader4,
#[yaserde(rename = "TradData")]
#[cfg_attr(feature = "serde", serde(rename = "TradData"))]
pub trad_data: TradeData19Choice,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
}
impl Validate for DerivativesTradeReportV02 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Direction2Choice {
#[yaserde(rename = "DrctnOfTheFrstLeg")]
#[cfg_attr(feature = "serde", serde(rename = "DrctnOfTheFrstLeg"))]
pub drctn_of_the_frst_leg: Option<OptionParty3Code>,
#[yaserde(rename = "CtrPtySd")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPtySd"))]
pub ctr_pty_sd: Option<OptionParty1Code>,
}
impl Validate for Direction2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Document {
#[yaserde(rename = "DerivsTradRpt")]
#[cfg_attr(feature = "serde", serde(rename = "DerivsTradRpt"))]
pub derivs_trad_rpt: DerivativesTradeReportV02,
}
impl Validate for Document {}
#[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:auth.030.001.02")]
pub enum DurationType1Code {
#[yaserde(rename = "YEAR")]
#[cfg_attr(feature = "serde", serde(rename = "YEAR"))]
Year,
#[yaserde(rename = "WEEK")]
#[cfg_attr(feature = "serde", serde(rename = "WEEK"))]
Week,
#[yaserde(rename = "SEAS")]
#[cfg_attr(feature = "serde", serde(rename = "SEAS"))]
Seas,
#[yaserde(rename = "QURT")]
#[cfg_attr(feature = "serde", serde(rename = "QURT"))]
Qurt,
#[yaserde(rename = "MNTH")]
#[cfg_attr(feature = "serde", serde(rename = "MNTH"))]
Mnth,
#[yaserde(rename = "MNUT")]
#[cfg_attr(feature = "serde", serde(rename = "MNUT"))]
Mnut,
#[yaserde(rename = "HOUR")]
#[cfg_attr(feature = "serde", serde(rename = "HOUR"))]
Hour,
#[yaserde(rename = "DASD")]
#[cfg_attr(feature = "serde", serde(rename = "DASD"))]
Dasd,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for DurationType1Code {
fn default() -> DurationType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DurationType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Eicidentifier (pub String);
crate::simple_type!(Eicidentifier);
impl Validate for Eicidentifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct EnergyDeliveryAttribute5 {
#[yaserde(rename = "DlvryIntrvl")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryIntrvl"))]
pub dlvry_intrvl: Isotime,
#[yaserde(rename = "DlvryPrd")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryPrd"))]
pub dlvry_prd: DateTimePeriod1,
#[yaserde(rename = "DlvryTm")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryTm"))]
pub dlvry_tm: Vec<TimePeriodDetails1>,
#[yaserde(rename = "Drtn")]
#[cfg_attr(feature = "serde", serde(rename = "Drtn"))]
pub drtn: DurationType1Code,
#[yaserde(rename = "WkDay")]
#[cfg_attr(feature = "serde", serde(rename = "WkDay"))]
pub wk_day: Vec<WeekDay3Code>,
#[yaserde(rename = "DlvryCpcty")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryCpcty"))]
pub dlvry_cpcty: Quantity47Choice,
#[yaserde(rename = "QtyUnit")]
#[cfg_attr(feature = "serde", serde(rename = "QtyUnit"))]
pub qty_unit: EnergyQuantityUnit2Choice,
#[yaserde(rename = "PricTmIntrvlQty")]
#[cfg_attr(feature = "serde", serde(rename = "PricTmIntrvlQty"))]
pub pric_tm_intrvl_qty: LongFraction19DecimalNumber,
}
impl Validate for EnergyDeliveryAttribute5 {}
#[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:auth.030.001.02")]
pub enum EnergyLoadType1Code {
#[yaserde(rename = "BSLD")]
#[cfg_attr(feature = "serde", serde(rename = "BSLD"))]
Bsld,
#[yaserde(rename = "GASD")]
#[cfg_attr(feature = "serde", serde(rename = "GASD"))]
Gasd,
#[yaserde(rename = "HABH")]
#[cfg_attr(feature = "serde", serde(rename = "HABH"))]
Habh,
#[yaserde(rename = "OFFP")]
#[cfg_attr(feature = "serde", serde(rename = "OFFP"))]
Offp,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "PKLD")]
#[cfg_attr(feature = "serde", serde(rename = "PKLD"))]
Pkld,
#[yaserde(rename = "SHPD")]
#[cfg_attr(feature = "serde", serde(rename = "SHPD"))]
Shpd,
__Unknown__(String),
}
impl Default for EnergyLoadType1Code {
fn default() -> EnergyLoadType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for EnergyLoadType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct EnergyQuantityUnit2Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<EnergyQuantityUnit2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max52Text>,
}
impl Validate for EnergyQuantityUnit2Choice {}
#[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:auth.030.001.02")]
pub enum EnergyQuantityUnit2Code {
#[yaserde(rename = "BTUD")]
#[cfg_attr(feature = "serde", serde(rename = "BTUD"))]
Btud,
#[yaserde(rename = "CMPD")]
#[cfg_attr(feature = "serde", serde(rename = "CMPD"))]
Cmpd,
#[yaserde(rename = "GJDD")]
#[cfg_attr(feature = "serde", serde(rename = "GJDD"))]
Gjdd,
#[yaserde(rename = "GWAT")]
#[cfg_attr(feature = "serde", serde(rename = "GWAT"))]
Gwat,
#[yaserde(rename = "GWHD")]
#[cfg_attr(feature = "serde", serde(rename = "GWHD"))]
Gwhd,
#[yaserde(rename = "GWHH")]
#[cfg_attr(feature = "serde", serde(rename = "GWHH"))]
Gwhh,
#[yaserde(rename = "HMJD")]
#[cfg_attr(feature = "serde", serde(rename = "HMJD"))]
Hmjd,
#[yaserde(rename = "KTMD")]
#[cfg_attr(feature = "serde", serde(rename = "KTMD"))]
Ktmd,
#[yaserde(rename = "KWAT")]
#[cfg_attr(feature = "serde", serde(rename = "KWAT"))]
Kwat,
#[yaserde(rename = "KWHD")]
#[cfg_attr(feature = "serde", serde(rename = "KWHD"))]
Kwhd,
#[yaserde(rename = "KWHH")]
#[cfg_attr(feature = "serde", serde(rename = "KWHH"))]
Kwhh,
#[yaserde(rename = "MCMD")]
#[cfg_attr(feature = "serde", serde(rename = "MCMD"))]
Mcmd,
#[yaserde(rename = "MJDD")]
#[cfg_attr(feature = "serde", serde(rename = "MJDD"))]
Mjdd,
#[yaserde(rename = "MBTD")]
#[cfg_attr(feature = "serde", serde(rename = "MBTD"))]
Mbtd,
#[yaserde(rename = "MMJD")]
#[cfg_attr(feature = "serde", serde(rename = "MMJD"))]
Mmjd,
#[yaserde(rename = "MTMD")]
#[cfg_attr(feature = "serde", serde(rename = "MTMD"))]
Mtmd,
#[yaserde(rename = "MWAT")]
#[cfg_attr(feature = "serde", serde(rename = "MWAT"))]
Mwat,
#[yaserde(rename = "MWHD")]
#[cfg_attr(feature = "serde", serde(rename = "MWHD"))]
Mwhd,
#[yaserde(rename = "MWHH")]
#[cfg_attr(feature = "serde", serde(rename = "MWHH"))]
Mwhh,
#[yaserde(rename = "THMD")]
#[cfg_attr(feature = "serde", serde(rename = "THMD"))]
Thmd,
__Unknown__(String),
}
impl Default for EnergyQuantityUnit2Code {
fn default() -> EnergyQuantityUnit2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for EnergyQuantityUnit2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct EnergySpecificAttribute6 {
#[yaserde(rename = "DlvryPtOrZone")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryPtOrZone"))]
pub dlvry_pt_or_zone: Vec<DeliveryInterconnectionPoint1Choice>,
#[yaserde(rename = "IntrCnnctnPt")]
#[cfg_attr(feature = "serde", serde(rename = "IntrCnnctnPt"))]
pub intr_cnnctn_pt: DeliveryInterconnectionPoint1Choice,
#[yaserde(rename = "LdTp")]
#[cfg_attr(feature = "serde", serde(rename = "LdTp"))]
pub ld_tp: EnergyLoadType1Code,
#[yaserde(rename = "DlvryAttr")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryAttr"))]
pub dlvry_attr: Vec<EnergyDeliveryAttribute5>,
}
impl Validate for EnergySpecificAttribute6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct ExchangeRateBasis1 {
#[yaserde(rename = "BaseCcy")]
#[cfg_attr(feature = "serde", serde(rename = "BaseCcy"))]
pub base_ccy: ActiveCurrencyCode,
#[yaserde(rename = "QtdCcy")]
#[cfg_attr(feature = "serde", serde(rename = "QtdCcy"))]
pub qtd_ccy: ActiveCurrencyCode,
}
impl Validate for ExchangeRateBasis1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct ExchangeRateBasis1Choice {
#[yaserde(rename = "CcyPair")]
#[cfg_attr(feature = "serde", serde(rename = "CcyPair"))]
pub ccy_pair: Option<ExchangeRateBasis1>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max52Text>,
}
impl Validate for ExchangeRateBasis1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct ExerciseDate1Choice {
#[yaserde(rename = "FrstExrcDt")]
#[cfg_attr(feature = "serde", serde(rename = "FrstExrcDt"))]
pub frst_exrc_dt: Option<Isodate>,
#[yaserde(rename = "PdgDtAplbl")]
#[cfg_attr(feature = "serde", serde(rename = "PdgDtAplbl"))]
pub pdg_dt_aplbl: Option<PriceStatus2Code>,
}
impl Validate for ExerciseDate1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ExternalAgreementType1Code (pub String);
crate::simple_type!(ExternalAgreementType1Code);
impl Validate for ExternalAgreementType1Code {
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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub enum FinancialInstrumentContractType2Code {
#[yaserde(rename = "CFDS")]
#[cfg_attr(feature = "serde", serde(rename = "CFDS"))]
Cfds,
#[yaserde(rename = "FRAS")]
#[cfg_attr(feature = "serde", serde(rename = "FRAS"))]
Fras,
#[yaserde(rename = "FUTR")]
#[cfg_attr(feature = "serde", serde(rename = "FUTR"))]
Futr,
#[yaserde(rename = "FORW")]
#[cfg_attr(feature = "serde", serde(rename = "FORW"))]
Forw,
#[yaserde(rename = "OPTN")]
#[cfg_attr(feature = "serde", serde(rename = "OPTN"))]
Optn,
#[yaserde(rename = "SPDB")]
#[cfg_attr(feature = "serde", serde(rename = "SPDB"))]
Spdb,
#[yaserde(rename = "SWAP")]
#[cfg_attr(feature = "serde", serde(rename = "SWAP"))]
Swap,
#[yaserde(rename = "SWPT")]
#[cfg_attr(feature = "serde", serde(rename = "SWPT"))]
Swpt,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for FinancialInstrumentContractType2Code {
fn default() -> FinancialInstrumentContractType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FinancialInstrumentContractType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct FinancialInstrumentQuantity32Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<LongFraction19DecimalNumber>,
#[yaserde(rename = "NmnlVal")]
#[cfg_attr(feature = "serde", serde(rename = "NmnlVal"))]
pub nmnl_val: Option<ActiveOrHistoricCurrencyAnd19DecimalAmount>,
#[yaserde(rename = "MntryVal")]
#[cfg_attr(feature = "serde", serde(rename = "MntryVal"))]
pub mntry_val: Option<ActiveOrHistoricCurrencyAnd19DecimalAmount>,
}
impl Validate for FinancialInstrumentQuantity32Choice {}
#[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:auth.030.001.02")]
pub enum FinancialPartySectorType1Code {
#[yaserde(rename = "AIFD")]
#[cfg_attr(feature = "serde", serde(rename = "AIFD"))]
Aifd,
#[yaserde(rename = "ASSU")]
#[cfg_attr(feature = "serde", serde(rename = "ASSU"))]
Assu,
#[yaserde(rename = "CDTI")]
#[cfg_attr(feature = "serde", serde(rename = "CDTI"))]
Cdti,
#[yaserde(rename = "INUN")]
#[cfg_attr(feature = "serde", serde(rename = "INUN"))]
Inun,
#[yaserde(rename = "INVF")]
#[cfg_attr(feature = "serde", serde(rename = "INVF"))]
Invf,
#[yaserde(rename = "ORPI")]
#[cfg_attr(feature = "serde", serde(rename = "ORPI"))]
Orpi,
#[yaserde(rename = "REIN")]
#[cfg_attr(feature = "serde", serde(rename = "REIN"))]
Rein,
#[yaserde(rename = "UCIT")]
#[cfg_attr(feature = "serde", serde(rename = "UCIT"))]
Ucit,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for FinancialPartySectorType1Code {
fn default() -> FinancialPartySectorType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FinancialPartySectorType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct FixedRate10 {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: SecuritiesTransactionPrice14Choice,
#[yaserde(rename = "DayCnt")]
#[cfg_attr(feature = "serde", serde(rename = "DayCnt"))]
pub day_cnt: InterestComputationMethodFormat7,
#[yaserde(rename = "PmtFrqcy")]
#[cfg_attr(feature = "serde", serde(rename = "PmtFrqcy"))]
pub pmt_frqcy: InterestRateFrequency3Choice,
}
impl Validate for FixedRate10 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct FloatingRate7 {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: FloatingRateIdentification4Choice,
#[yaserde(rename = "RefPrd")]
#[cfg_attr(feature = "serde", serde(rename = "RefPrd"))]
pub ref_prd: InterestRateContractTerm4,
#[yaserde(rename = "Sprd")]
#[cfg_attr(feature = "serde", serde(rename = "Sprd"))]
pub sprd: SecuritiesTransactionPrice13Choice,
#[yaserde(rename = "DayCnt")]
#[cfg_attr(feature = "serde", serde(rename = "DayCnt"))]
pub day_cnt: InterestComputationMethodFormat7,
#[yaserde(rename = "PmtFrqcy")]
#[cfg_attr(feature = "serde", serde(rename = "PmtFrqcy"))]
pub pmt_frqcy: InterestRateFrequency3Choice,
#[yaserde(rename = "RstFrqcy")]
#[cfg_attr(feature = "serde", serde(rename = "RstFrqcy"))]
pub rst_frqcy: InterestRateFrequency3Choice,
}
impl Validate for FloatingRate7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct FloatingRateIdentification4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<BenchmarkCurveName5Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max350Text>,
}
impl Validate for FloatingRateIdentification4Choice {}
#[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:auth.030.001.02")]
pub enum Frequency13Code {
#[yaserde(rename = "DAIL")]
#[cfg_attr(feature = "serde", serde(rename = "DAIL"))]
Dail,
#[yaserde(rename = "WEEK")]
#[cfg_attr(feature = "serde", serde(rename = "WEEK"))]
Week,
#[yaserde(rename = "MNTH")]
#[cfg_attr(feature = "serde", serde(rename = "MNTH"))]
Mnth,
#[yaserde(rename = "YEAR")]
#[cfg_attr(feature = "serde", serde(rename = "YEAR"))]
Year,
#[yaserde(rename = "ADHO")]
#[cfg_attr(feature = "serde", serde(rename = "ADHO"))]
Adho,
#[yaserde(rename = "EXPI")]
#[cfg_attr(feature = "serde", serde(rename = "EXPI"))]
Expi,
#[yaserde(rename = "MIAN")]
#[cfg_attr(feature = "serde", serde(rename = "MIAN"))]
Mian,
#[yaserde(rename = "QURT")]
#[cfg_attr(feature = "serde", serde(rename = "QURT"))]
Qurt,
__Unknown__(String),
}
impl Default for Frequency13Code {
fn default() -> Frequency13Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Frequency13Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct GenericIdentification174 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Src")]
#[cfg_attr(feature = "serde", serde(rename = "Src"))]
pub src: Max35Text,
}
impl Validate for GenericIdentification174 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct GenericIdentification175 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max72Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
}
impl Validate for GenericIdentification175 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct GenericIdentification179 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max52Text,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
}
impl Validate for GenericIdentification179 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isin2021Identifier (pub String);
crate::simple_type!(Isin2021Identifier);
impl Validate for Isin2021Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isodate (pub String);
crate::simple_type!(Isodate);
impl Validate for Isodate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct IsodateTime (pub String);
crate::simple_type!(IsodateTime);
impl Validate for IsodateTime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isotime (pub String);
crate::simple_type!(Isotime);
impl Validate for Isotime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct InstrumentIdentification1Choice {
#[yaserde(rename = "ISIN")]
#[cfg_attr(feature = "serde", serde(rename = "ISIN"))]
pub isin: Option<Isin2021Identifier>,
#[yaserde(rename = "AltrntvInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrntvInstrmId"))]
pub altrntv_instrm_id: Option<Max52Text>,
#[yaserde(rename = "UnqPdctIdr")]
#[cfg_attr(feature = "serde", serde(rename = "UnqPdctIdr"))]
pub unq_pdct_idr: Option<Max52Text>,
#[yaserde(rename = "OthrId")]
#[cfg_attr(feature = "serde", serde(rename = "OthrId"))]
pub othr_id: Option<GenericIdentification174>,
}
impl Validate for InstrumentIdentification1Choice {}
#[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:auth.030.001.02")]
pub enum InterestComputationMethod4Code {
A004,
A019,
A017,
A005,
A009,
A014,
A010,
A006,
A008,
A015,
A018,
A011,
A001,
A002,
A003,
A012,
A013,
A007,
A016,
#[yaserde(rename = "NARR")]
#[cfg_attr(feature = "serde", serde(rename = "NARR"))]
Narr,
A020,
__Unknown__(String),
}
impl Default for InterestComputationMethod4Code {
fn default() -> InterestComputationMethod4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for InterestComputationMethod4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct InterestComputationMethodFormat7 {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: InterestComputationMethod4Code,
#[yaserde(rename = "Nrrtv")]
#[cfg_attr(feature = "serde", serde(rename = "Nrrtv"))]
pub nrrtv: Max1000Text,
}
impl Validate for InterestComputationMethodFormat7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct InterestRate23Choice {
#[yaserde(rename = "Fxd")]
#[cfg_attr(feature = "serde", serde(rename = "Fxd"))]
pub fxd: Option<FixedRate10>,
#[yaserde(rename = "Fltg")]
#[cfg_attr(feature = "serde", serde(rename = "Fltg"))]
pub fltg: Option<FloatingRate7>,
}
impl Validate for InterestRate23Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct InterestRateContractTerm4 {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Frequency13Code,
#[yaserde(rename = "Val")]
#[cfg_attr(feature = "serde", serde(rename = "Val"))]
pub val: Max3Number,
}
impl Validate for InterestRateContractTerm4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct InterestRateFrequency3Choice {
#[yaserde(rename = "Term")]
#[cfg_attr(feature = "serde", serde(rename = "Term"))]
pub term: Option<InterestRateContractTerm4>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max52Text>,
}
impl Validate for InterestRateFrequency3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct InterestRateLegs9 {
#[yaserde(rename = "FrstLeg")]
#[cfg_attr(feature = "serde", serde(rename = "FrstLeg"))]
pub frst_leg: InterestRate23Choice,
#[yaserde(rename = "ScndLeg")]
#[cfg_attr(feature = "serde", serde(rename = "ScndLeg"))]
pub scnd_leg: InterestRate23Choice,
}
impl Validate for InterestRateLegs9 {}
#[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:auth.030.001.02")]
pub struct LegCurrency2 {
#[yaserde(rename = "CcyFrstLeg")]
#[cfg_attr(feature = "serde", serde(rename = "CcyFrstLeg"))]
pub ccy_frst_leg: ActiveOrHistoricCurrencyCode,
#[yaserde(rename = "CcyScndLeg")]
#[cfg_attr(feature = "serde", serde(rename = "CcyScndLeg"))]
pub ccy_scnd_leg: ActiveOrHistoricCurrencyCode,
}
impl Validate for LegCurrency2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct LongFraction19DecimalNumber (pub String);
crate::simple_type!(LongFraction19DecimalNumber);
impl Validate for LongFraction19DecimalNumber {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Micidentifier (pub String);
crate::simple_type!(Micidentifier);
impl Validate for Micidentifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct MasterAgreement7 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: AgreementType2Choice,
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Max50Text,
#[yaserde(rename = "OthrMstrAgrmtDtls")]
#[cfg_attr(feature = "serde", serde(rename = "OthrMstrAgrmtDtls"))]
pub othr_mstr_agrmt_dtls: Max350Text,
}
impl Validate for MasterAgreement7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max1000Text (pub String);
crate::simple_type!(Max1000Text);
impl Validate for Max1000Text {
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() > 1000 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 1000 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max105Text (pub String);
crate::simple_type!(Max105Text);
impl Validate for Max105Text {
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() > 105 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 105 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max350Text (pub String);
crate::simple_type!(Max350Text);
impl Validate for Max350Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 350 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 350 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max35Text (pub String);
crate::simple_type!(Max35Text);
impl Validate for Max35Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 35 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 35 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct 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 Max500Text (pub String);
crate::simple_type!(Max500Text);
impl Validate for Max500Text {
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() > 500 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 500 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max50Text (pub String);
crate::simple_type!(Max50Text);
impl Validate for Max50Text {
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() > 50 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 50 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max52Text (pub String);
crate::simple_type!(Max52Text);
impl Validate for Max52Text {
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 Max5NumericText (pub String);
crate::simple_type!(Max5NumericText);
impl Validate for Max5NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max72Text (pub String);
crate::simple_type!(Max72Text);
impl Validate for Max72Text {
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() > 72 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 72 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub enum ModificationLevel1Code {
#[yaserde(rename = "PSTN")]
#[cfg_attr(feature = "serde", serde(rename = "PSTN"))]
Pstn,
#[yaserde(rename = "TCTN")]
#[cfg_attr(feature = "serde", serde(rename = "TCTN"))]
Tctn,
__Unknown__(String),
}
impl Default for ModificationLevel1Code {
fn default() -> ModificationLevel1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ModificationLevel1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct NacedomainIdentifier (pub String);
crate::simple_type!(NacedomainIdentifier);
impl Validate for NacedomainIdentifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct NaturalPersonIdentification2 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: GenericIdentification175,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max105Text,
#[yaserde(rename = "Dmcl")]
#[cfg_attr(feature = "serde", serde(rename = "Dmcl"))]
pub dmcl: Max500Text,
}
impl Validate for NaturalPersonIdentification2 {}
#[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:auth.030.001.02")]
pub enum NoReasonCode {
#[yaserde(rename = "NORE")]
#[cfg_attr(feature = "serde", serde(rename = "NORE"))]
Nore,
__Unknown__(String),
}
impl Default for NoReasonCode {
fn default() -> NoReasonCode {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for NoReasonCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct NonFinancialInstitutionSector2 {
#[yaserde(rename = "Sctr")]
#[cfg_attr(feature = "serde", serde(rename = "Sctr"))]
pub sctr: Vec<NacedomainIdentifier>,
#[yaserde(rename = "ClrThrshld")]
#[cfg_attr(feature = "serde", serde(rename = "ClrThrshld"))]
pub clr_thrshld: TrueFalseIndicator,
#[yaserde(rename = "DrctlyLkdActvty")]
#[cfg_attr(feature = "serde", serde(rename = "DrctlyLkdActvty"))]
pub drctly_lkd_actvty: TrueFalseIndicator,
}
impl Validate for NonFinancialInstitutionSector2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct NonFinancialInstitutionSector4 {
#[yaserde(rename = "NFI")]
#[cfg_attr(feature = "serde", serde(rename = "NFI"))]
pub nfi: NoReasonCode,
#[yaserde(rename = "NFIIdr")]
#[cfg_attr(feature = "serde", serde(rename = "NFIIdr"))]
pub nfi_idr: NonFinancialInstitutionSector2,
}
impl Validate for NonFinancialInstitutionSector4 {}
#[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:auth.030.001.02")]
pub enum NotApplicable1Code {
#[yaserde(rename = "NOAP")]
#[cfg_attr(feature = "serde", serde(rename = "NOAP"))]
Noap,
__Unknown__(String),
}
impl Default for NotApplicable1Code {
fn default() -> NotApplicable1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for NotApplicable1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct NotionalAmount1 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: AmountAndDirection106,
#[yaserde(rename = "Schdl")]
#[cfg_attr(feature = "serde", serde(rename = "Schdl"))]
pub schdl: Vec<Schedule3>,
}
impl Validate for NotionalAmount1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct NotionalQuantity1 {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: LongFraction19DecimalNumber,
#[yaserde(rename = "Schdl")]
#[cfg_attr(feature = "serde", serde(rename = "Schdl"))]
pub schdl: Vec<Schedule2>,
#[yaserde(rename = "UnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "UnitOfMeasr"))]
pub unit_of_measr: UnitOfMeasure12Code,
}
impl Validate for NotionalQuantity1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Number (pub String);
crate::simple_type!(Number);
impl Validate for Number {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct OptionOrSwaption7 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: OptionType2Code,
#[yaserde(rename = "ExrcStyle")]
#[cfg_attr(feature = "serde", serde(rename = "ExrcStyle"))]
pub exrc_style: Vec<OptionStyle6Code>,
#[yaserde(rename = "ExrcDt")]
#[cfg_attr(feature = "serde", serde(rename = "ExrcDt"))]
pub exrc_dt: ExerciseDate1Choice,
#[yaserde(rename = "StrkPric")]
#[cfg_attr(feature = "serde", serde(rename = "StrkPric"))]
pub strk_pric: SecuritiesTransactionPrice17Choice,
#[yaserde(rename = "StrkPricSchdl")]
#[cfg_attr(feature = "serde", serde(rename = "StrkPricSchdl"))]
pub strk_pric_schdl: Vec<Schedule4>,
#[yaserde(rename = "CallAmt")]
#[cfg_attr(feature = "serde", serde(rename = "CallAmt"))]
pub call_amt: ActiveOrHistoricCurrencyAnd19DecimalAmount,
#[yaserde(rename = "PutAmt")]
#[cfg_attr(feature = "serde", serde(rename = "PutAmt"))]
pub put_amt: ActiveOrHistoricCurrencyAnd19DecimalAmount,
#[yaserde(rename = "PrmAmt")]
#[cfg_attr(feature = "serde", serde(rename = "PrmAmt"))]
pub prm_amt: ActiveOrHistoricCurrencyAnd19DecimalAmount,
#[yaserde(rename = "PrmPmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "PrmPmtDt"))]
pub prm_pmt_dt: Isodate,
#[yaserde(rename = "MtrtyDtOfUndrlyg")]
#[cfg_attr(feature = "serde", serde(rename = "MtrtyDtOfUndrlyg"))]
pub mtrty_dt_of_undrlyg: Isodate,
}
impl Validate for OptionOrSwaption7 {}
#[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:auth.030.001.02")]
pub enum OptionParty1Code {
#[yaserde(rename = "SLLR")]
#[cfg_attr(feature = "serde", serde(rename = "SLLR"))]
Sllr,
#[yaserde(rename = "BYER")]
#[cfg_attr(feature = "serde", serde(rename = "BYER"))]
Byer,
__Unknown__(String),
}
impl Default for OptionParty1Code {
fn default() -> OptionParty1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionParty1Code {}
#[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:auth.030.001.02")]
pub enum OptionParty3Code {
#[yaserde(rename = "MAKE")]
#[cfg_attr(feature = "serde", serde(rename = "MAKE"))]
Make,
#[yaserde(rename = "TAKE")]
#[cfg_attr(feature = "serde", serde(rename = "TAKE"))]
Take,
__Unknown__(String),
}
impl Default for OptionParty3Code {
fn default() -> OptionParty3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionParty3Code {}
#[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:auth.030.001.02")]
pub enum OptionStyle6Code {
#[yaserde(rename = "EURO")]
#[cfg_attr(feature = "serde", serde(rename = "EURO"))]
Euro,
#[yaserde(rename = "BERM")]
#[cfg_attr(feature = "serde", serde(rename = "BERM"))]
Berm,
#[yaserde(rename = "ASIA")]
#[cfg_attr(feature = "serde", serde(rename = "ASIA"))]
Asia,
#[yaserde(rename = "AMER")]
#[cfg_attr(feature = "serde", serde(rename = "AMER"))]
Amer,
__Unknown__(String),
}
impl Default for OptionStyle6Code {
fn default() -> OptionStyle6Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionStyle6Code {}
#[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:auth.030.001.02")]
pub enum OptionType2Code {
#[yaserde(rename = "CALL")]
#[cfg_attr(feature = "serde", serde(rename = "CALL"))]
Call,
#[yaserde(rename = "PUTO")]
#[cfg_attr(feature = "serde", serde(rename = "PUTO"))]
Puto,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for OptionType2Code {
fn default() -> OptionType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OptionType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct OrganisationIdentification10Choice {
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Option<Leiidentifier>,
#[yaserde(rename = "Othr")]
#[cfg_attr(feature = "serde", serde(rename = "Othr"))]
pub othr: Option<OrganisationIdentification36>,
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
}
impl Validate for OrganisationIdentification10Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct OrganisationIdentification36 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: GenericIdentification175,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max105Text,
#[yaserde(rename = "Dmcl")]
#[cfg_attr(feature = "serde", serde(rename = "Dmcl"))]
pub dmcl: Max500Text,
}
impl Validate for OrganisationIdentification36 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct OtherPayment3 {
#[yaserde(rename = "PmtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "PmtAmt"))]
pub pmt_amt: AmountAndDirection106,
#[yaserde(rename = "PmtTp")]
#[cfg_attr(feature = "serde", serde(rename = "PmtTp"))]
pub pmt_tp: PaymentType5Choice,
#[yaserde(rename = "PmtDt")]
#[cfg_attr(feature = "serde", serde(rename = "PmtDt"))]
pub pmt_dt: Isodate,
#[yaserde(rename = "PmtPyer")]
#[cfg_attr(feature = "serde", serde(rename = "PmtPyer"))]
pub pmt_pyer: PartyIdentification235Choice,
#[yaserde(rename = "PmtRcvr")]
#[cfg_attr(feature = "serde", serde(rename = "PmtRcvr"))]
pub pmt_rcvr: PartyIdentification235Choice,
}
impl Validate for OtherPayment3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Package1 {
#[yaserde(rename = "CmplxTradId")]
#[cfg_attr(feature = "serde", serde(rename = "CmplxTradId"))]
pub cmplx_trad_id: Max35Text,
#[yaserde(rename = "Pric")]
#[cfg_attr(feature = "serde", serde(rename = "Pric"))]
pub pric: SecuritiesTransactionPrice17Choice,
#[yaserde(rename = "Sprd")]
#[cfg_attr(feature = "serde", serde(rename = "Sprd"))]
pub sprd: SecuritiesTransactionPrice13Choice,
}
impl Validate for Package1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Pagination1 {
#[yaserde(rename = "PgNb")]
#[cfg_attr(feature = "serde", serde(rename = "PgNb"))]
pub pg_nb: Max5NumericText,
#[yaserde(rename = "LastPgInd")]
#[cfg_attr(feature = "serde", serde(rename = "LastPgInd"))]
pub last_pg_ind: YesNoIndicator,
}
impl Validate for Pagination1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct PartyIdentification235Choice {
#[yaserde(rename = "Lgl")]
#[cfg_attr(feature = "serde", serde(rename = "Lgl"))]
pub lgl: Option<OrganisationIdentification10Choice>,
#[yaserde(rename = "Ntrl")]
#[cfg_attr(feature = "serde", serde(rename = "Ntrl"))]
pub ntrl: Option<NaturalPersonIdentification2>,
}
impl Validate for PartyIdentification235Choice {}
#[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:auth.030.001.02")]
pub enum PaymentType4Code {
#[yaserde(rename = "UFRO")]
#[cfg_attr(feature = "serde", serde(rename = "UFRO"))]
Ufro,
#[yaserde(rename = "UWIN")]
#[cfg_attr(feature = "serde", serde(rename = "UWIN"))]
Uwin,
#[yaserde(rename = "PEXH")]
#[cfg_attr(feature = "serde", serde(rename = "PEXH"))]
Pexh,
__Unknown__(String),
}
impl Default for PaymentType4Code {
fn default() -> PaymentType4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PaymentType4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct PaymentType5Choice {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Option<PaymentType4Code>,
#[yaserde(rename = "PrtryTp")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryTp"))]
pub prtry_tp: Option<Max4AlphaNumericText>,
}
impl Validate for PaymentType5Choice {}
#[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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub enum PhysicalTransferType4Code {
#[yaserde(rename = "PHYS")]
#[cfg_attr(feature = "serde", serde(rename = "PHYS"))]
Phys,
#[yaserde(rename = "OPTL")]
#[cfg_attr(feature = "serde", serde(rename = "OPTL"))]
Optl,
#[yaserde(rename = "CASH")]
#[cfg_attr(feature = "serde", serde(rename = "CASH"))]
Cash,
__Unknown__(String),
}
impl Default for PhysicalTransferType4Code {
fn default() -> PhysicalTransferType4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PhysicalTransferType4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct PlusOrMinusIndicator (pub bool);
crate::simple_type!(PlusOrMinusIndicator);
impl Validate for PlusOrMinusIndicator {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct PortfolioCode1Choice {
#[yaserde(rename = "Prtfl")]
#[cfg_attr(feature = "serde", serde(rename = "Prtfl"))]
pub prtfl: Option<Max52Text>,
#[yaserde(rename = "NoCd")]
#[cfg_attr(feature = "serde", serde(rename = "NoCd"))]
pub no_cd: Option<NotApplicable1Code>,
}
impl Validate for PortfolioCode1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct PrePostHaircut1 {
#[yaserde(rename = "PreHrcut")]
#[cfg_attr(feature = "serde", serde(rename = "PreHrcut"))]
pub pre_hrcut: ActiveOrHistoricCurrencyAnd19DecimalAmount,
#[yaserde(rename = "PstHrcut")]
#[cfg_attr(feature = "serde", serde(rename = "PstHrcut"))]
pub pst_hrcut: ActiveOrHistoricCurrencyAnd19DecimalAmount,
}
impl Validate for PrePostHaircut1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct PriceData1 {
#[yaserde(rename = "Pric")]
#[cfg_attr(feature = "serde", serde(rename = "Pric"))]
pub pric: SecuritiesTransactionPrice17Choice,
#[yaserde(rename = "PricSchdl")]
#[cfg_attr(feature = "serde", serde(rename = "PricSchdl"))]
pub pric_schdl: Vec<Schedule1>,
#[yaserde(rename = "UnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "UnitOfMeasr"))]
pub unit_of_measr: UnitOfMeasure12Code,
#[yaserde(rename = "PricMltplr")]
#[cfg_attr(feature = "serde", serde(rename = "PricMltplr"))]
pub pric_mltplr: LongFraction19DecimalNumber,
}
impl Validate for PriceData1 {}
#[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:auth.030.001.02")]
pub enum PriceStatus1Code {
#[yaserde(rename = "PNDG")]
#[cfg_attr(feature = "serde", serde(rename = "PNDG"))]
Pndg,
#[yaserde(rename = "NOAP")]
#[cfg_attr(feature = "serde", serde(rename = "NOAP"))]
Noap,
__Unknown__(String),
}
impl Default for PriceStatus1Code {
fn default() -> PriceStatus1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceStatus1Code {}
#[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:auth.030.001.02")]
pub enum PriceStatus2Code {
#[yaserde(rename = "PNDG")]
#[cfg_attr(feature = "serde", serde(rename = "PNDG"))]
Pndg,
__Unknown__(String),
}
impl Default for PriceStatus2Code {
fn default() -> PriceStatus2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceStatus2Code {}
#[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:auth.030.001.02")]
pub enum ProductType4Code {
#[yaserde(rename = "CRDT")]
#[cfg_attr(feature = "serde", serde(rename = "CRDT"))]
Crdt,
#[yaserde(rename = "CURR")]
#[cfg_attr(feature = "serde", serde(rename = "CURR"))]
Curr,
#[yaserde(rename = "EQUI")]
#[cfg_attr(feature = "serde", serde(rename = "EQUI"))]
Equi,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "COMM")]
#[cfg_attr(feature = "serde", serde(rename = "COMM"))]
Comm,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for ProductType4Code {
fn default() -> ProductType4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ProductType4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Quantity47Choice {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: Option<LongFraction19DecimalNumber>,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Option<Max52Text>,
}
impl Validate for Quantity47Choice {}
#[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:auth.030.001.02")]
pub enum Reconciliation2Code {
#[yaserde(rename = "SSNE")]
#[cfg_attr(feature = "serde", serde(rename = "SSNE"))]
Ssne,
#[yaserde(rename = "SSUN")]
#[cfg_attr(feature = "serde", serde(rename = "SSUN"))]
Ssun,
#[yaserde(rename = "SSPA")]
#[cfg_attr(feature = "serde", serde(rename = "SSPA"))]
Sspa,
#[yaserde(rename = "SSMA")]
#[cfg_attr(feature = "serde", serde(rename = "SSMA"))]
Ssma,
#[yaserde(rename = "NORE")]
#[cfg_attr(feature = "serde", serde(rename = "NORE"))]
Nore,
#[yaserde(rename = "DSNM")]
#[cfg_attr(feature = "serde", serde(rename = "DSNM"))]
Dsnm,
#[yaserde(rename = "DSMA")]
#[cfg_attr(feature = "serde", serde(rename = "DSMA"))]
Dsma,
__Unknown__(String),
}
impl Default for Reconciliation2Code {
fn default() -> Reconciliation2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Reconciliation2Code {}
#[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:auth.030.001.02")]
pub enum ReportPeriodActivity1Code {
#[yaserde(rename = "NOTX")]
#[cfg_attr(feature = "serde", serde(rename = "NOTX"))]
Notx,
__Unknown__(String),
}
impl Default for ReportPeriodActivity1Code {
fn default() -> ReportPeriodActivity1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ReportPeriodActivity1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Schedule1 {
#[yaserde(rename = "UadjstdFctvDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdFctvDt"))]
pub uadjstd_fctv_dt: Isodate,
#[yaserde(rename = "UadjstdEndDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdEndDt"))]
pub uadjstd_end_dt: Isodate,
#[yaserde(rename = "Pric")]
#[cfg_attr(feature = "serde", serde(rename = "Pric"))]
pub pric: SecuritiesTransactionPrice17Choice,
}
impl Validate for Schedule1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Schedule2 {
#[yaserde(rename = "UadjstdFctvDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdFctvDt"))]
pub uadjstd_fctv_dt: Isodate,
#[yaserde(rename = "UadjstdEndDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdEndDt"))]
pub uadjstd_end_dt: Isodate,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: LongFraction19DecimalNumber,
}
impl Validate for Schedule2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Schedule3 {
#[yaserde(rename = "UadjstdFctvDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdFctvDt"))]
pub uadjstd_fctv_dt: Isodate,
#[yaserde(rename = "UadjstdEndDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdEndDt"))]
pub uadjstd_end_dt: Isodate,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: AmountAndDirection106,
}
impl Validate for Schedule3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Schedule4 {
#[yaserde(rename = "UadjstdFctvDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdFctvDt"))]
pub uadjstd_fctv_dt: Isodate,
#[yaserde(rename = "UadjstdEndDt")]
#[cfg_attr(feature = "serde", serde(rename = "UadjstdEndDt"))]
pub uadjstd_end_dt: Isodate,
#[yaserde(rename = "Pric")]
#[cfg_attr(feature = "serde", serde(rename = "Pric"))]
pub pric: SecuritiesTransactionPrice17Choice,
}
impl Validate for Schedule4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct SecuritiesTransactionPrice13Choice {
#[yaserde(rename = "MntryVal")]
#[cfg_attr(feature = "serde", serde(rename = "MntryVal"))]
pub mntry_val: Option<AmountAndDirection106>,
#[yaserde(rename = "Pctg")]
#[cfg_attr(feature = "serde", serde(rename = "Pctg"))]
pub pctg: Option<PercentageRate>,
#[yaserde(rename = "Dcml")]
#[cfg_attr(feature = "serde", serde(rename = "Dcml"))]
pub dcml: Option<BaseOneRate>,
#[yaserde(rename = "BsisPtSprd")]
#[cfg_attr(feature = "serde", serde(rename = "BsisPtSprd"))]
pub bsis_pt_sprd: Option<Number>,
}
impl Validate for SecuritiesTransactionPrice13Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct SecuritiesTransactionPrice14Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "Dcml")]
#[cfg_attr(feature = "serde", serde(rename = "Dcml"))]
pub dcml: Option<BaseOneRate>,
}
impl Validate for SecuritiesTransactionPrice14Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct SecuritiesTransactionPrice17Choice {
#[yaserde(rename = "MntryVal")]
#[cfg_attr(feature = "serde", serde(rename = "MntryVal"))]
pub mntry_val: Option<AmountAndDirection106>,
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<LongFraction19DecimalNumber>,
#[yaserde(rename = "Pctg")]
#[cfg_attr(feature = "serde", serde(rename = "Pctg"))]
pub pctg: Option<PercentageRate>,
#[yaserde(rename = "Yld")]
#[cfg_attr(feature = "serde", serde(rename = "Yld"))]
pub yld: Option<PercentageRate>,
#[yaserde(rename = "Dcml")]
#[cfg_attr(feature = "serde", serde(rename = "Dcml"))]
pub dcml: Option<BaseOneRate>,
#[yaserde(rename = "PdgPric")]
#[cfg_attr(feature = "serde", serde(rename = "PdgPric"))]
pub pdg_pric: Option<PriceStatus1Code>,
#[yaserde(rename = "Othr")]
#[cfg_attr(feature = "serde", serde(rename = "Othr"))]
pub othr: Option<SecuritiesTransactionPrice5>,
}
impl Validate for SecuritiesTransactionPrice17Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct SecuritiesTransactionPrice5 {
#[yaserde(rename = "Val")]
#[cfg_attr(feature = "serde", serde(rename = "Val"))]
pub val: LongFraction19DecimalNumber,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
}
impl Validate for SecuritiesTransactionPrice5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct SecurityIdentification22 {
#[yaserde(rename = "ISIN")]
#[cfg_attr(feature = "serde", serde(rename = "ISIN"))]
pub isin: Isin2021Identifier,
#[yaserde(rename = "UnqPdctIdr")]
#[cfg_attr(feature = "serde", serde(rename = "UnqPdctIdr"))]
pub unq_pdct_idr: Max52Text,
#[yaserde(rename = "AltrntvInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrntvInstrmId"))]
pub altrntv_instrm_id: Max52Text,
}
impl Validate for SecurityIdentification22 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct SecurityIdentification36Choice {
#[yaserde(rename = "ISIN")]
#[cfg_attr(feature = "serde", serde(rename = "ISIN"))]
pub isin: Option<Isin2021Identifier>,
#[yaserde(rename = "AltrntvInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "AltrntvInstrmId"))]
pub altrntv_instrm_id: Option<Max52Text>,
#[yaserde(rename = "UnqPdctIdr")]
#[cfg_attr(feature = "serde", serde(rename = "UnqPdctIdr"))]
pub unq_pdct_idr: Option<Max52Text>,
#[yaserde(rename = "Bskt")]
#[cfg_attr(feature = "serde", serde(rename = "Bskt"))]
pub bskt: Option<CustomBasket1>,
#[yaserde(rename = "Indx")]
#[cfg_attr(feature = "serde", serde(rename = "Indx"))]
pub indx: Option<SecurityIdentification37Choice>,
#[yaserde(rename = "IdNotAvlbl")]
#[cfg_attr(feature = "serde", serde(rename = "IdNotAvlbl"))]
pub id_not_avlbl: Option<UnderlyingIdentification1Code>,
}
impl Validate for SecurityIdentification36Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct SecurityIdentification37Choice {
#[yaserde(rename = "ISIN")]
#[cfg_attr(feature = "serde", serde(rename = "ISIN"))]
pub isin: Option<Isin2021Identifier>,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Option<Max350Text>,
#[yaserde(rename = "Indx")]
#[cfg_attr(feature = "serde", serde(rename = "Indx"))]
pub indx: Option<BenchmarkCurveName5Code>,
}
impl Validate for SecurityIdentification37Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
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:auth.030.001.02")]
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:auth.030.001.02")]
pub struct TechnicalAttributes4 {
#[yaserde(rename = "RcncltnFlg")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnFlg"))]
pub rcncltn_flg: Reconciliation2Code,
}
impl Validate for TechnicalAttributes4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TimePeriodDetails1 {
#[yaserde(rename = "FrTm")]
#[cfg_attr(feature = "serde", serde(rename = "FrTm"))]
pub fr_tm: Isotime,
#[yaserde(rename = "ToTm")]
#[cfg_attr(feature = "serde", serde(rename = "ToTm"))]
pub to_tm: Isotime,
}
impl Validate for TimePeriodDetails1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeClearing5 {
#[yaserde(rename = "ClrOblgtn")]
#[cfg_attr(feature = "serde", serde(rename = "ClrOblgtn"))]
pub clr_oblgtn: ClearingObligationType1Code,
#[yaserde(rename = "ClrSts")]
#[cfg_attr(feature = "serde", serde(rename = "ClrSts"))]
pub clr_sts: Cleared12Choice,
#[yaserde(rename = "IntraGrp")]
#[cfg_attr(feature = "serde", serde(rename = "IntraGrp"))]
pub intra_grp: TrueFalseIndicator,
}
impl Validate for TradeClearing5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeCollateralReport5 {
#[yaserde(rename = "PrtflCd")]
#[cfg_attr(feature = "serde", serde(rename = "PrtflCd"))]
pub prtfl_cd: PortfolioCode1Choice,
#[yaserde(rename = "Collstn")]
#[cfg_attr(feature = "serde", serde(rename = "Collstn"))]
pub collstn: CollateralisationType2Code,
#[yaserde(rename = "InitlMrgnPstd")]
#[cfg_attr(feature = "serde", serde(rename = "InitlMrgnPstd"))]
pub initl_mrgn_pstd: PrePostHaircut1,
#[yaserde(rename = "InitlMrgnRcvd")]
#[cfg_attr(feature = "serde", serde(rename = "InitlMrgnRcvd"))]
pub initl_mrgn_rcvd: PrePostHaircut1,
#[yaserde(rename = "VartnMrgnPstd")]
#[cfg_attr(feature = "serde", serde(rename = "VartnMrgnPstd"))]
pub vartn_mrgn_pstd: PrePostHaircut1,
#[yaserde(rename = "VartnMrgnRcvd")]
#[cfg_attr(feature = "serde", serde(rename = "VartnMrgnRcvd"))]
pub vartn_mrgn_rcvd: PrePostHaircut1,
#[yaserde(rename = "XcssCollPstd")]
#[cfg_attr(feature = "serde", serde(rename = "XcssCollPstd"))]
pub xcss_coll_pstd: ActiveOrHistoricCurrencyAnd19DecimalAmount,
#[yaserde(rename = "XcssCollRcvd")]
#[cfg_attr(feature = "serde", serde(rename = "XcssCollRcvd"))]
pub xcss_coll_rcvd: ActiveOrHistoricCurrencyAnd19DecimalAmount,
#[yaserde(rename = "CtrPtyRatgTrggrInd")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPtyRatgTrggrInd"))]
pub ctr_pty_ratg_trggr_ind: TrueFalseIndicator,
#[yaserde(rename = "CtrPtyRatgThrshldInd")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPtyRatgThrshldInd"))]
pub ctr_pty_ratg_thrshld_ind: TrueFalseIndicator,
}
impl Validate for TradeCollateralReport5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeConfirmation1Choice {
#[yaserde(rename = "Confd")]
#[cfg_attr(feature = "serde", serde(rename = "Confd"))]
pub confd: Option<TradeConfirmation2>,
#[yaserde(rename = "NonConfd")]
#[cfg_attr(feature = "serde", serde(rename = "NonConfd"))]
pub non_confd: Option<TradeNonConfirmation1>,
}
impl Validate for TradeConfirmation1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeConfirmation2 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: TradeConfirmationType1Code,
#[yaserde(rename = "TmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "TmStmp"))]
pub tm_stmp: IsodateTime,
}
impl Validate for TradeConfirmation2 {}
#[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:auth.030.001.02")]
pub enum TradeConfirmationType1Code {
#[yaserde(rename = "ECNF")]
#[cfg_attr(feature = "serde", serde(rename = "ECNF"))]
Ecnf,
#[yaserde(rename = "YCNF")]
#[cfg_attr(feature = "serde", serde(rename = "YCNF"))]
Ycnf,
__Unknown__(String),
}
impl Default for TradeConfirmationType1Code {
fn default() -> TradeConfirmationType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TradeConfirmationType1Code {}
#[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:auth.030.001.02")]
pub enum TradeConfirmationType2Code {
#[yaserde(rename = "NCNF")]
#[cfg_attr(feature = "serde", serde(rename = "NCNF"))]
Ncnf,
__Unknown__(String),
}
impl Default for TradeConfirmationType2Code {
fn default() -> TradeConfirmationType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TradeConfirmationType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeCounterpartyReport14 {
#[yaserde(rename = "RptgCtrPty")]
#[cfg_attr(feature = "serde", serde(rename = "RptgCtrPty"))]
pub rptg_ctr_pty: Counterparty34,
#[yaserde(rename = "OthrCtrPty")]
#[cfg_attr(feature = "serde", serde(rename = "OthrCtrPty"))]
pub othr_ctr_pty: Counterparty31,
#[yaserde(rename = "Brkr")]
#[cfg_attr(feature = "serde", serde(rename = "Brkr"))]
pub brkr: OrganisationIdentification10Choice,
#[yaserde(rename = "SubmitgAgt")]
#[cfg_attr(feature = "serde", serde(rename = "SubmitgAgt"))]
pub submitg_agt: OrganisationIdentification10Choice,
#[yaserde(rename = "ClrMmb")]
#[cfg_attr(feature = "serde", serde(rename = "ClrMmb"))]
pub clr_mmb: OrganisationIdentification10Choice,
#[yaserde(rename = "Bnfcry")]
#[cfg_attr(feature = "serde", serde(rename = "Bnfcry"))]
pub bnfcry: Vec<PartyIdentification235Choice>,
}
impl Validate for TradeCounterpartyReport14 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeData19Choice {
#[yaserde(rename = "DataSetActn")]
#[cfg_attr(feature = "serde", serde(rename = "DataSetActn"))]
pub data_set_actn: Option<ReportPeriodActivity1Code>,
#[yaserde(rename = "Rpt")]
#[cfg_attr(feature = "serde", serde(rename = "Rpt"))]
pub rpt: Vec<TradeReport15Choice>,
#[yaserde(rename = "Stat")]
#[cfg_attr(feature = "serde", serde(rename = "Stat"))]
pub stat: Vec<TradeStateReport12>,
}
impl Validate for TradeData19Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeData23 {
#[yaserde(rename = "CtrPtySpcfcData")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPtySpcfcData"))]
pub ctr_pty_spcfc_data: Vec<CounterpartySpecificData29>,
#[yaserde(rename = "CmonTradData")]
#[cfg_attr(feature = "serde", serde(rename = "CmonTradData"))]
pub cmon_trad_data: CommonTradeDataReport49,
#[yaserde(rename = "Lvl")]
#[cfg_attr(feature = "serde", serde(rename = "Lvl"))]
pub lvl: ModificationLevel1Code,
#[yaserde(rename = "TechAttrbts")]
#[cfg_attr(feature = "serde", serde(rename = "TechAttrbts"))]
pub tech_attrbts: TechnicalAttributes4,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
}
impl Validate for TradeData23 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeNonConfirmation1 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: TradeConfirmationType2Code,
}
impl Validate for TradeNonConfirmation1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeQueryHeader4 {
#[yaserde(rename = "QryExctnDt")]
#[cfg_attr(feature = "serde", serde(rename = "QryExctnDt"))]
pub qry_exctn_dt: Isodate,
#[yaserde(rename = "MsgPgntn")]
#[cfg_attr(feature = "serde", serde(rename = "MsgPgntn"))]
pub msg_pgntn: Pagination1,
#[yaserde(rename = "NbRcrds")]
#[cfg_attr(feature = "serde", serde(rename = "NbRcrds"))]
pub nb_rcrds: Number,
}
impl Validate for TradeQueryHeader4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeReport15Choice {
#[yaserde(rename = "New")]
#[cfg_attr(feature = "serde", serde(rename = "New"))]
pub new: Option<TradeData23>,
#[yaserde(rename = "Mod")]
#[cfg_attr(feature = "serde", serde(rename = "Mod"))]
pub r#mod: Option<TradeData23>,
#[yaserde(rename = "Crrctn")]
#[cfg_attr(feature = "serde", serde(rename = "Crrctn"))]
pub crrctn: Option<TradeData23>,
#[yaserde(rename = "Termntn")]
#[cfg_attr(feature = "serde", serde(rename = "Termntn"))]
pub termntn: Option<TradeData23>,
#[yaserde(rename = "PosCmpnt")]
#[cfg_attr(feature = "serde", serde(rename = "PosCmpnt"))]
pub pos_cmpnt: Option<TradeData23>,
#[yaserde(rename = "ValtnUpd")]
#[cfg_attr(feature = "serde", serde(rename = "ValtnUpd"))]
pub valtn_upd: Option<TradeData23>,
#[yaserde(rename = "Cmprssn")]
#[cfg_attr(feature = "serde", serde(rename = "Cmprssn"))]
pub cmprssn: Option<TradeData23>,
#[yaserde(rename = "Err")]
#[cfg_attr(feature = "serde", serde(rename = "Err"))]
pub err: Option<TradeData23>,
#[yaserde(rename = "Othr")]
#[cfg_attr(feature = "serde", serde(rename = "Othr"))]
pub othr: Option<TradeData23>,
}
impl Validate for TradeReport15Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeStateReport12 {
#[yaserde(rename = "CtrPtySpcfcData")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPtySpcfcData"))]
pub ctr_pty_spcfc_data: Vec<CounterpartySpecificData29>,
#[yaserde(rename = "CmonTradData")]
#[cfg_attr(feature = "serde", serde(rename = "CmonTradData"))]
pub cmon_trad_data: CommonTradeDataReport50,
#[yaserde(rename = "TechAttrbts")]
#[cfg_attr(feature = "serde", serde(rename = "TechAttrbts"))]
pub tech_attrbts: TechnicalAttributes4,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
}
impl Validate for TradeStateReport12 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TradeTransaction37 {
#[yaserde(rename = "UnqTxIdr")]
#[cfg_attr(feature = "serde", serde(rename = "UnqTxIdr"))]
pub unq_tx_idr: UniqueTransactionIdentifier1Choice,
#[yaserde(rename = "PrrUnqTxIdr")]
#[cfg_attr(feature = "serde", serde(rename = "PrrUnqTxIdr"))]
pub prr_unq_tx_idr: UniqueTransactionIdentifier1Choice,
#[yaserde(rename = "RptTrckgNb")]
#[cfg_attr(feature = "serde", serde(rename = "RptTrckgNb"))]
pub rpt_trckg_nb: Max52Text,
#[yaserde(rename = "PltfmIdr")]
#[cfg_attr(feature = "serde", serde(rename = "PltfmIdr"))]
pub pltfm_idr: Micidentifier,
#[yaserde(rename = "Cmprssn")]
#[cfg_attr(feature = "serde", serde(rename = "Cmprssn"))]
pub cmprssn: TrueFalseIndicator,
#[yaserde(rename = "TxPric")]
#[cfg_attr(feature = "serde", serde(rename = "TxPric"))]
pub tx_pric: PriceData1,
#[yaserde(rename = "NtnlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NtnlAmt"))]
pub ntnl_amt: Vec<NotionalAmount1>,
#[yaserde(rename = "NtnlQty")]
#[cfg_attr(feature = "serde", serde(rename = "NtnlQty"))]
pub ntnl_qty: Vec<NotionalQuantity1>,
#[yaserde(rename = "Dlta")]
#[cfg_attr(feature = "serde", serde(rename = "Dlta"))]
pub dlta: LongFraction19DecimalNumber,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: FinancialInstrumentQuantity32Choice,
#[yaserde(rename = "DlvryTp")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryTp"))]
pub dlvry_tp: PhysicalTransferType4Code,
#[yaserde(rename = "ExctnTmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "ExctnTmStmp"))]
pub exctn_tm_stmp: IsodateTime,
#[yaserde(rename = "FctvDt")]
#[cfg_attr(feature = "serde", serde(rename = "FctvDt"))]
pub fctv_dt: Isodate,
#[yaserde(rename = "XprtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "XprtnDt"))]
pub xprtn_dt: Isodate,
#[yaserde(rename = "EarlyTermntnDt")]
#[cfg_attr(feature = "serde", serde(rename = "EarlyTermntnDt"))]
pub early_termntn_dt: Isodate,
#[yaserde(rename = "SttlmDt")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmDt"))]
pub sttlm_dt: Vec<Isodate>,
#[yaserde(rename = "MstrAgrmt")]
#[cfg_attr(feature = "serde", serde(rename = "MstrAgrmt"))]
pub mstr_agrmt: MasterAgreement7,
#[yaserde(rename = "TradConf")]
#[cfg_attr(feature = "serde", serde(rename = "TradConf"))]
pub trad_conf: TradeConfirmation1Choice,
#[yaserde(rename = "TradClr")]
#[cfg_attr(feature = "serde", serde(rename = "TradClr"))]
pub trad_clr: TradeClearing5,
#[yaserde(rename = "IntrstRate")]
#[cfg_attr(feature = "serde", serde(rename = "IntrstRate"))]
pub intrst_rate: InterestRateLegs9,
#[yaserde(rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: CurrencyExchange17,
#[yaserde(rename = "Cmmdty")]
#[cfg_attr(feature = "serde", serde(rename = "Cmmdty"))]
pub cmmdty: AssetClassCommodity2Choice,
#[yaserde(rename = "NrgySpcfcAttrbts")]
#[cfg_attr(feature = "serde", serde(rename = "NrgySpcfcAttrbts"))]
pub nrgy_spcfc_attrbts: EnergySpecificAttribute6,
#[yaserde(rename = "Optn")]
#[cfg_attr(feature = "serde", serde(rename = "Optn"))]
pub optn: OptionOrSwaption7,
#[yaserde(rename = "Cdt")]
#[cfg_attr(feature = "serde", serde(rename = "Cdt"))]
pub cdt: CreditDerivative4,
#[yaserde(rename = "OthrPmt")]
#[cfg_attr(feature = "serde", serde(rename = "OthrPmt"))]
pub othr_pmt: Vec<OtherPayment3>,
#[yaserde(rename = "Packg")]
#[cfg_attr(feature = "serde", serde(rename = "Packg"))]
pub packg: Package1,
}
impl Validate for TradeTransaction37 {}
#[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:auth.030.001.02")]
pub enum TradingCapacity7Code {
#[yaserde(rename = "AGEN")]
#[cfg_attr(feature = "serde", serde(rename = "AGEN"))]
Agen,
#[yaserde(rename = "PRIN")]
#[cfg_attr(feature = "serde", serde(rename = "PRIN"))]
Prin,
__Unknown__(String),
}
impl Default for TradingCapacity7Code {
fn default() -> TradingCapacity7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TradingCapacity7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct Tranche3 {
#[yaserde(rename = "AttchmntPt")]
#[cfg_attr(feature = "serde", serde(rename = "AttchmntPt"))]
pub attchmnt_pt: BaseOneRate,
#[yaserde(rename = "DtchmntPt")]
#[cfg_attr(feature = "serde", serde(rename = "DtchmntPt"))]
pub dtchmnt_pt: BaseOneRate,
}
impl Validate for Tranche3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct TrancheIndicator3Choice {
#[yaserde(rename = "Trnchd")]
#[cfg_attr(feature = "serde", serde(rename = "Trnchd"))]
pub trnchd: Option<Tranche3>,
#[yaserde(rename = "Utrnchd")]
#[cfg_attr(feature = "serde", serde(rename = "Utrnchd"))]
pub utrnchd: Option<NoReasonCode>,
}
impl Validate for TrancheIndicator3Choice {}
#[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:auth.030.001.02")]
pub enum TransactionOperationType7Code {
#[yaserde(rename = "CORR")]
#[cfg_attr(feature = "serde", serde(rename = "CORR"))]
Corr,
#[yaserde(rename = "EROR")]
#[cfg_attr(feature = "serde", serde(rename = "EROR"))]
Eror,
#[yaserde(rename = "NEWT")]
#[cfg_attr(feature = "serde", serde(rename = "NEWT"))]
Newt,
#[yaserde(rename = "POSC")]
#[cfg_attr(feature = "serde", serde(rename = "POSC"))]
Posc,
#[yaserde(rename = "VALU")]
#[cfg_attr(feature = "serde", serde(rename = "VALU"))]
Valu,
#[yaserde(rename = "COMP")]
#[cfg_attr(feature = "serde", serde(rename = "COMP"))]
Comp,
#[yaserde(rename = "MODI")]
#[cfg_attr(feature = "serde", serde(rename = "MODI"))]
Modi,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "REVI")]
#[cfg_attr(feature = "serde", serde(rename = "REVI"))]
Revi,
#[yaserde(rename = "TERM")]
#[cfg_attr(feature = "serde", serde(rename = "TERM"))]
Term,
__Unknown__(String),
}
impl Default for TransactionOperationType7Code {
fn default() -> TransactionOperationType7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TransactionOperationType7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct TrueFalseIndicator (pub bool);
crate::simple_type!(TrueFalseIndicator);
impl Validate for TrueFalseIndicator {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Utiidentifier (pub String);
crate::simple_type!(Utiidentifier);
impl Validate for Utiidentifier {}
#[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:auth.030.001.02")]
pub enum UnderlyingIdentification1Code {
#[yaserde(rename = "UKWN")]
#[cfg_attr(feature = "serde", serde(rename = "UKWN"))]
Ukwn,
#[yaserde(rename = "BSKT")]
#[cfg_attr(feature = "serde", serde(rename = "BSKT"))]
Bskt,
#[yaserde(rename = "INDX")]
#[cfg_attr(feature = "serde", serde(rename = "INDX"))]
Indx,
__Unknown__(String),
}
impl Default for UnderlyingIdentification1Code {
fn default() -> UnderlyingIdentification1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for UnderlyingIdentification1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:auth.030.001.02")]
pub struct UniqueTransactionIdentifier1Choice {
#[yaserde(rename = "UnqTxIdr")]
#[cfg_attr(feature = "serde", serde(rename = "UnqTxIdr"))]
pub unq_tx_idr: Option<Utiidentifier>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification179>,
}
impl Validate for UniqueTransactionIdentifier1Choice {}
#[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:auth.030.001.02")]
pub enum UnitOfMeasure12Code {
#[yaserde(rename = "ACRE")]
#[cfg_attr(feature = "serde", serde(rename = "ACRE"))]
Acre,
#[yaserde(rename = "ALOW")]
#[cfg_attr(feature = "serde", serde(rename = "ALOW"))]
Alow,
#[yaserde(rename = "ACCY")]
#[cfg_attr(feature = "serde", serde(rename = "ACCY"))]
Accy,
#[yaserde(rename = "ARES")]
#[cfg_attr(feature = "serde", serde(rename = "ARES"))]
Ares,
#[yaserde(rename = "BAGG")]
#[cfg_attr(feature = "serde", serde(rename = "BAGG"))]
Bagg,
#[yaserde(rename = "BALE")]
#[cfg_attr(feature = "serde", serde(rename = "BALE"))]
Bale,
#[yaserde(rename = "BARL")]
#[cfg_attr(feature = "serde", serde(rename = "BARL"))]
Barl,
#[yaserde(rename = "BCUF")]
#[cfg_attr(feature = "serde", serde(rename = "BCUF"))]
Bcuf,
#[yaserde(rename = "BDFT")]
#[cfg_attr(feature = "serde", serde(rename = "BDFT"))]
Bdft,
#[yaserde(rename = "BOTL")]
#[cfg_attr(feature = "serde", serde(rename = "BOTL"))]
Botl,
#[yaserde(rename = "BOXX")]
#[cfg_attr(feature = "serde", serde(rename = "BOXX"))]
Boxx,
#[yaserde(rename = "BRTU")]
#[cfg_attr(feature = "serde", serde(rename = "BRTU"))]
Brtu,
#[yaserde(rename = "BUSL")]
#[cfg_attr(feature = "serde", serde(rename = "BUSL"))]
Busl,
#[yaserde(rename = "CRTN")]
#[cfg_attr(feature = "serde", serde(rename = "CRTN"))]
Crtn,
#[yaserde(rename = "CELI")]
#[cfg_attr(feature = "serde", serde(rename = "CELI"))]
Celi,
#[yaserde(rename = "CMET")]
#[cfg_attr(feature = "serde", serde(rename = "CMET"))]
Cmet,
#[yaserde(rename = "YARD")]
#[cfg_attr(feature = "serde", serde(rename = "YARD"))]
Yard,
#[yaserde(rename = "USTN")]
#[cfg_attr(feature = "serde", serde(rename = "USTN"))]
Ustn,
#[yaserde(rename = "USQA")]
#[cfg_attr(feature = "serde", serde(rename = "USQA"))]
Usqa,
#[yaserde(rename = "USPI")]
#[cfg_attr(feature = "serde", serde(rename = "USPI"))]
Uspi,
#[yaserde(rename = "USOU")]
#[cfg_attr(feature = "serde", serde(rename = "USOU"))]
Usou,
#[yaserde(rename = "UCWT")]
#[cfg_attr(feature = "serde", serde(rename = "UCWT"))]
Ucwt,
#[yaserde(rename = "USGA")]
#[cfg_attr(feature = "serde", serde(rename = "USGA"))]
Usga,
#[yaserde(rename = "USFO")]
#[cfg_attr(feature = "serde", serde(rename = "USFO"))]
Usfo,
#[yaserde(rename = "USBA")]
#[cfg_attr(feature = "serde", serde(rename = "USBA"))]
Usba,
#[yaserde(rename = "OZTR")]
#[cfg_attr(feature = "serde", serde(rename = "OZTR"))]
Oztr,
#[yaserde(rename = "TOCD")]
#[cfg_attr(feature = "serde", serde(rename = "TOCD"))]
Tocd,
#[yaserde(rename = "MILI")]
#[cfg_attr(feature = "serde", serde(rename = "MILI"))]
Mili,
#[yaserde(rename = "MMET")]
#[cfg_attr(feature = "serde", serde(rename = "MMET"))]
Mmet,
#[yaserde(rename = "MIBA")]
#[cfg_attr(feature = "serde", serde(rename = "MIBA"))]
Miba,
#[yaserde(rename = "MBTU")]
#[cfg_attr(feature = "serde", serde(rename = "MBTU"))]
Mbtu,
#[yaserde(rename = "PIEC")]
#[cfg_attr(feature = "serde", serde(rename = "PIEC"))]
Piec,
#[yaserde(rename = "PUND")]
#[cfg_attr(feature = "serde", serde(rename = "PUND"))]
Pund,
#[yaserde(rename = "PWRD")]
#[cfg_attr(feature = "serde", serde(rename = "PWRD"))]
Pwrd,
#[yaserde(rename = "SHAS")]
#[cfg_attr(feature = "serde", serde(rename = "SHAS"))]
Shas,
#[yaserde(rename = "SCMT")]
#[cfg_attr(feature = "serde", serde(rename = "SCMT"))]
Scmt,
#[yaserde(rename = "SQFO")]
#[cfg_attr(feature = "serde", serde(rename = "SQFO"))]
Sqfo,
#[yaserde(rename = "SQIN")]
#[cfg_attr(feature = "serde", serde(rename = "SQIN"))]
Sqin,
#[yaserde(rename = "SQKI")]
#[cfg_attr(feature = "serde", serde(rename = "SQKI"))]
Sqki,
#[yaserde(rename = "SMET")]
#[cfg_attr(feature = "serde", serde(rename = "SMET"))]
Smet,
#[yaserde(rename = "SQMI")]
#[cfg_attr(feature = "serde", serde(rename = "SQMI"))]
Sqmi,
#[yaserde(rename = "SMIL")]
#[cfg_attr(feature = "serde", serde(rename = "SMIL"))]
Smil,
#[yaserde(rename = "SQYA")]
#[cfg_attr(feature = "serde", serde(rename = "SQYA"))]
Sqya,
#[yaserde(rename = "THMS")]
#[cfg_attr(feature = "serde", serde(rename = "THMS"))]
Thms,
#[yaserde(rename = "TONS")]
#[cfg_attr(feature = "serde", serde(rename = "TONS"))]
Tons,
#[yaserde(rename = "MILE")]
#[cfg_attr(feature = "serde", serde(rename = "MILE"))]
Mile,
#[yaserde(rename = "TONE")]
#[cfg_attr(feature = "serde", serde(rename = "TONE"))]
Tone,
#[yaserde(rename = "METR")]
#[cfg_attr(feature = "serde", serde(rename = "METR"))]
Metr,
#[yaserde(rename = "MWYC")]
#[cfg_attr(feature = "serde", serde(rename = "MWYC"))]
Mwyc,
#[yaserde(rename = "MMOC")]
#[cfg_attr(feature = "serde", serde(rename = "MMOC"))]
Mmoc,
#[yaserde(rename = "MWMC")]
#[cfg_attr(feature = "serde", serde(rename = "MWMC"))]
Mwmc,
#[yaserde(rename = "MWHC")]
#[cfg_attr(feature = "serde", serde(rename = "MWHC"))]
Mwhc,
#[yaserde(rename = "MWHO")]
#[cfg_attr(feature = "serde", serde(rename = "MWHO"))]
Mwho,
#[yaserde(rename = "MWDC")]
#[cfg_attr(feature = "serde", serde(rename = "MWDC"))]
Mwdc,
#[yaserde(rename = "LOTS")]
#[cfg_attr(feature = "serde", serde(rename = "LOTS"))]
Lots,
#[yaserde(rename = "LITR")]
#[cfg_attr(feature = "serde", serde(rename = "LITR"))]
Litr,
#[yaserde(rename = "KWYC")]
#[cfg_attr(feature = "serde", serde(rename = "KWYC"))]
Kwyc,
#[yaserde(rename = "KWMC")]
#[cfg_attr(feature = "serde", serde(rename = "KWMC"))]
Kwmc,
#[yaserde(rename = "KMOC")]
#[cfg_attr(feature = "serde", serde(rename = "KMOC"))]
Kmoc,
#[yaserde(rename = "KWHC")]
#[cfg_attr(feature = "serde", serde(rename = "KWHC"))]
Kwhc,
#[yaserde(rename = "KWDC")]
#[cfg_attr(feature = "serde", serde(rename = "KWDC"))]
Kwdc,
#[yaserde(rename = "KWHO")]
#[cfg_attr(feature = "serde", serde(rename = "KWHO"))]
Kwho,
#[yaserde(rename = "KMET")]
#[cfg_attr(feature = "serde", serde(rename = "KMET"))]
Kmet,
#[yaserde(rename = "KILO")]
#[cfg_attr(feature = "serde", serde(rename = "KILO"))]
Kilo,
#[yaserde(rename = "IPNT")]
#[cfg_attr(feature = "serde", serde(rename = "IPNT"))]
Ipnt,
#[yaserde(rename = "INCH")]
#[cfg_attr(feature = "serde", serde(rename = "INCH"))]
Inch,
#[yaserde(rename = "HUWG")]
#[cfg_attr(feature = "serde", serde(rename = "HUWG"))]
Huwg,
#[yaserde(rename = "HECT")]
#[cfg_attr(feature = "serde", serde(rename = "HECT"))]
Hect,
#[yaserde(rename = "GRAM")]
#[cfg_attr(feature = "serde", serde(rename = "GRAM"))]
Gram,
#[yaserde(rename = "GWHO")]
#[cfg_attr(feature = "serde", serde(rename = "GWHO"))]
Gwho,
#[yaserde(rename = "GBTN")]
#[cfg_attr(feature = "serde", serde(rename = "GBTN"))]
Gbtn,
#[yaserde(rename = "GBQA")]
#[cfg_attr(feature = "serde", serde(rename = "GBQA"))]
Gbqa,
#[yaserde(rename = "GBPI")]
#[cfg_attr(feature = "serde", serde(rename = "GBPI"))]
Gbpi,
#[yaserde(rename = "GBOU")]
#[cfg_attr(feature = "serde", serde(rename = "GBOU"))]
Gbou,
#[yaserde(rename = "GBGA")]
#[cfg_attr(feature = "serde", serde(rename = "GBGA"))]
Gbga,
#[yaserde(rename = "GBFO")]
#[cfg_attr(feature = "serde", serde(rename = "GBFO"))]
Gbfo,
#[yaserde(rename = "GGEU")]
#[cfg_attr(feature = "serde", serde(rename = "GGEU"))]
Ggeu,
#[yaserde(rename = "FUTU")]
#[cfg_attr(feature = "serde", serde(rename = "FUTU"))]
Futu,
#[yaserde(rename = "FOOT")]
#[cfg_attr(feature = "serde", serde(rename = "FOOT"))]
Foot,
#[yaserde(rename = "ENVO")]
#[cfg_attr(feature = "serde", serde(rename = "ENVO"))]
Envo,
#[yaserde(rename = "ENVC")]
#[cfg_attr(feature = "serde", serde(rename = "ENVC"))]
Envc,
#[yaserde(rename = "DMET")]
#[cfg_attr(feature = "serde", serde(rename = "DMET"))]
Dmet,
#[yaserde(rename = "DGEU")]
#[cfg_attr(feature = "serde", serde(rename = "DGEU"))]
Dgeu,
#[yaserde(rename = "DAYS")]
#[cfg_attr(feature = "serde", serde(rename = "DAYS"))]
Days,
#[yaserde(rename = "CBML")]
#[cfg_attr(feature = "serde", serde(rename = "CBML"))]
Cbml,
#[yaserde(rename = "CBME")]
#[cfg_attr(feature = "serde", serde(rename = "CBME"))]
Cbme,
#[yaserde(rename = "CBIN")]
#[cfg_attr(feature = "serde", serde(rename = "CBIN"))]
Cbin,
#[yaserde(rename = "CRAT")]
#[cfg_attr(feature = "serde", serde(rename = "CRAT"))]
Crat,
#[yaserde(rename = "CNTR")]
#[cfg_attr(feature = "serde", serde(rename = "CNTR"))]
Cntr,
#[yaserde(rename = "CLRT")]
#[cfg_attr(feature = "serde", serde(rename = "CLRT"))]
Clrt,
#[yaserde(rename = "CEER")]
#[cfg_attr(feature = "serde", serde(rename = "CEER"))]
Ceer,
#[yaserde(rename = "CDDA")]
#[cfg_attr(feature = "serde", serde(rename = "CDDA"))]
Cdda,
#[yaserde(rename = "CPDA")]
#[cfg_attr(feature = "serde", serde(rename = "CPDA"))]
Cpda,
#[yaserde(rename = "HDDA")]
#[cfg_attr(feature = "serde", serde(rename = "HDDA"))]
Hdda,
__Unknown__(String),
}
impl Default for UnitOfMeasure12Code {
fn default() -> UnitOfMeasure12Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for UnitOfMeasure12Code {}
#[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:auth.030.001.02")]
pub enum ValuationType1Code {
#[yaserde(rename = "CCPV")]
#[cfg_attr(feature = "serde", serde(rename = "CCPV"))]
Ccpv,
#[yaserde(rename = "MTMA")]
#[cfg_attr(feature = "serde", serde(rename = "MTMA"))]
Mtma,
#[yaserde(rename = "MTMO")]
#[cfg_attr(feature = "serde", serde(rename = "MTMO"))]
Mtmo,
__Unknown__(String),
}
impl Default for ValuationType1Code {
fn default() -> ValuationType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ValuationType1Code {}
#[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:auth.030.001.02")]
pub enum WeekDay3Code {
#[yaserde(rename = "ALLD")]
#[cfg_attr(feature = "serde", serde(rename = "ALLD"))]
Alld,
#[yaserde(rename = "XBHL")]
#[cfg_attr(feature = "serde", serde(rename = "XBHL"))]
Xbhl,
#[yaserde(rename = "IBHL")]
#[cfg_attr(feature = "serde", serde(rename = "IBHL"))]
Ibhl,
#[yaserde(rename = "FRID")]
#[cfg_attr(feature = "serde", serde(rename = "FRID"))]
Frid,
#[yaserde(rename = "MOND")]
#[cfg_attr(feature = "serde", serde(rename = "MOND"))]
Mond,
#[yaserde(rename = "SATD")]
#[cfg_attr(feature = "serde", serde(rename = "SATD"))]
Satd,
#[yaserde(rename = "SUND")]
#[cfg_attr(feature = "serde", serde(rename = "SUND"))]
Sund,
#[yaserde(rename = "THUD")]
#[cfg_attr(feature = "serde", serde(rename = "THUD"))]
Thud,
#[yaserde(rename = "TUED")]
#[cfg_attr(feature = "serde", serde(rename = "TUED"))]
Tued,
#[yaserde(rename = "WEDD")]
#[cfg_attr(feature = "serde", serde(rename = "WEDD"))]
Wedd,
#[yaserde(rename = "WDAY")]
#[cfg_attr(feature = "serde", serde(rename = "WDAY"))]
Wday,
#[yaserde(rename = "WEND")]
#[cfg_attr(feature = "serde", serde(rename = "WEND"))]
Wend,
__Unknown__(String),
}
impl Default for WeekDay3Code {
fn default() -> WeekDay3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for WeekDay3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct YesNoIndicator (pub bool);
crate::simple_type!(YesNoIndicator);
impl Validate for YesNoIndicator {}
impl crate::MxMessage for Document {
const BUSINESS_AREA: crate::BusinessArea = crate::BusinessArea::auth;
const FUNCTIONALITY: &'static str = "030";
const VARIANT: &'static str = "001";
const VERSION: &'static str = "02";
const MESSAGE_NAME: &'static str = "auth.030.001.02";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:auth.030.001.02";
}