#![allow(clippy::all)]
#![allow(non_snake_case, non_camel_case_types, dead_code, unused_imports)]
#![allow(non_local_definitions)]
use std::str::FromStr;
use crate::validate::Validate;
use yaserde_derive::{YaDeserialize, YaSerialize};
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Account29 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: AccountIdentification26,
#[yaserde(rename = "AcctSvcr")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcr"))]
pub acct_svcr: PartyIdentification120Choice,
}
impl Validate for Account29 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct AccountIdentification26 {
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: SimpleIdentificationInformation4,
}
impl Validate for AccountIdentification26 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveOrHistoricCurrencyAnd13DecimalAmountSimpleType (pub String);
crate::simple_type!(ActiveOrHistoricCurrencyAnd13DecimalAmountSimpleType);
impl Validate for ActiveOrHistoricCurrencyAnd13DecimalAmountSimpleType {
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:semt.017.001.14")]
pub struct ActiveOrHistoricCurrencyAnd13DecimalAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveOrHistoricCurrencyCode,
}
impl Validate for ActiveOrHistoricCurrencyAnd13DecimalAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveOrHistoricCurrencyAndAmountSimpleType (pub String);
crate::simple_type!(ActiveOrHistoricCurrencyAndAmountSimpleType);
impl Validate for ActiveOrHistoricCurrencyAndAmountSimpleType {
fn validate(&self) -> Result<(), String> {
if self.0 < "0".parse::<String>().unwrap() {
return Err(format!("MinInclusive validation error: invalid value of 0! \nExpected: 0 >= 0.\nActual: 0 == {}", self.0));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct ActiveOrHistoricCurrencyAndAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveOrHistoricCurrencyCode,
}
impl Validate for ActiveOrHistoricCurrencyAndAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveOrHistoricCurrencyCode (pub String);
crate::simple_type!(ActiveOrHistoricCurrencyCode);
impl Validate for ActiveOrHistoricCurrencyCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct AdditionalReference10 {
#[yaserde(rename = "Ref")]
#[cfg_attr(feature = "serde", serde(rename = "Ref"))]
pub _ref: Max35Text,
#[yaserde(rename = "RefIssr")]
#[cfg_attr(feature = "serde", serde(rename = "RefIssr"))]
pub ref_issr: PartyIdentification139,
#[yaserde(rename = "MsgNm")]
#[cfg_attr(feature = "serde", serde(rename = "MsgNm"))]
pub msg_nm: Max35Text,
}
impl Validate for AdditionalReference10 {}
#[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:semt.017.001.14")]
pub enum AddressType2Code {
#[yaserde(rename = "ADDR")]
#[cfg_attr(feature = "serde", serde(rename = "ADDR"))]
Addr,
#[yaserde(rename = "PBOX")]
#[cfg_attr(feature = "serde", serde(rename = "PBOX"))]
Pbox,
#[yaserde(rename = "HOME")]
#[cfg_attr(feature = "serde", serde(rename = "HOME"))]
Home,
#[yaserde(rename = "BIZZ")]
#[cfg_attr(feature = "serde", serde(rename = "BIZZ"))]
Bizz,
#[yaserde(rename = "MLTO")]
#[cfg_attr(feature = "serde", serde(rename = "MLTO"))]
Mlto,
#[yaserde(rename = "DLVY")]
#[cfg_attr(feature = "serde", serde(rename = "DLVY"))]
Dlvy,
__Unknown__(String),
}
impl Default for AddressType2Code {
fn default() -> AddressType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AddressType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct AmountAndDirection21 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveOrHistoricCurrencyAndAmount,
#[yaserde(rename = "CdtDbtInd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbtInd"))]
pub cdt_dbt_ind: CreditDebitCode,
}
impl Validate for AmountAndDirection21 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct AmountAndDirection3 {
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ActiveOrHistoricCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebitCode,
}
impl Validate for AmountAndDirection3 {}
#[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:semt.017.001.14")]
pub struct BalanceQuantity14Choice {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: Option<FinancialInstrumentQuantity33Choice>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification56>,
}
impl Validate for BalanceQuantity14Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct BeneficialOwnership4Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for BeneficialOwnership4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct BlockChainAddressWallet2 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max140Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: PurposeCode7Choice,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
}
impl Validate for BlockChainAddressWallet2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct BlockChainAddressWallet3 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max140Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification30,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
}
impl Validate for BlockChainAddressWallet3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct BlockChainAddressWallet4 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max140Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification30,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
#[yaserde(rename = "Dsgnt")]
#[cfg_attr(feature = "serde", serde(rename = "Dsgnt"))]
pub dsgnt: Max35Text,
}
impl Validate for BlockChainAddressWallet4 {}
#[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:semt.017.001.14")]
pub enum BlockTrade1Code {
#[yaserde(rename = "BLPA")]
#[cfg_attr(feature = "serde", serde(rename = "BLPA"))]
Blpa,
#[yaserde(rename = "BLCH")]
#[cfg_attr(feature = "serde", serde(rename = "BLCH"))]
Blch,
__Unknown__(String),
}
impl Default for BlockTrade1Code {
fn default() -> BlockTrade1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for BlockTrade1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct BlockTrade4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<BlockTrade1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for BlockTrade4Choice {}
#[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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum CashSettlementSystem3Code {
#[yaserde(rename = "DCSS")]
#[cfg_attr(feature = "serde", serde(rename = "DCSS"))]
Dcss,
#[yaserde(rename = "GROS")]
#[cfg_attr(feature = "serde", serde(rename = "GROS"))]
Gros,
#[yaserde(rename = "NETS")]
#[cfg_attr(feature = "serde", serde(rename = "NETS"))]
Nets,
__Unknown__(String),
}
impl Default for CashSettlementSystem3Code {
fn default() -> CashSettlementSystem3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CashSettlementSystem3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct CashSettlementSystem6Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CashSettlementSystem3Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CashSettlementSystem6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct CashSettlementSystemPlace1Choice {
#[yaserde(rename = "DgtlLdgrId")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlLdgrId"))]
pub dgtl_ldgr_id: Option<Dti2024Identifier>,
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Option<Leiidentifier>,
}
impl Validate for CashSettlementSystemPlace1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct CentralCounterPartyEligibility4Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CentralCounterPartyEligibility4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct ClosingBalance5 {
#[yaserde(rename = "ShrtLngInd")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtLngInd"))]
pub shrt_lng_ind: ShortLong1Code,
#[yaserde(rename = "ClsgBal")]
#[cfg_attr(feature = "serde", serde(rename = "ClsgBal"))]
pub clsg_bal: ClosingBalance6Choice,
}
impl Validate for ClosingBalance5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct ClosingBalance6Choice {
#[yaserde(rename = "Fnl")]
#[cfg_attr(feature = "serde", serde(rename = "Fnl"))]
pub fnl: Option<BalanceQuantity14Choice>,
#[yaserde(rename = "Intrmy")]
#[cfg_attr(feature = "serde", serde(rename = "Intrmy"))]
pub intrmy: Option<BalanceQuantity14Choice>,
}
impl Validate for ClosingBalance6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct CorporateActionEventType110Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<CorporateActionEventType38Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for CorporateActionEventType110Choice {}
#[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:semt.017.001.14")]
pub enum CorporateActionEventType38Code {
#[yaserde(rename = "ACTV")]
#[cfg_attr(feature = "serde", serde(rename = "ACTV"))]
Actv,
#[yaserde(rename = "ATTI")]
#[cfg_attr(feature = "serde", serde(rename = "ATTI"))]
Atti,
#[yaserde(rename = "BRUP")]
#[cfg_attr(feature = "serde", serde(rename = "BRUP"))]
Brup,
#[yaserde(rename = "DFLT")]
#[cfg_attr(feature = "serde", serde(rename = "DFLT"))]
Dflt,
#[yaserde(rename = "BONU")]
#[cfg_attr(feature = "serde", serde(rename = "BONU"))]
Bonu,
#[yaserde(rename = "EXRI")]
#[cfg_attr(feature = "serde", serde(rename = "EXRI"))]
Exri,
#[yaserde(rename = "CAPD")]
#[cfg_attr(feature = "serde", serde(rename = "CAPD"))]
Capd,
#[yaserde(rename = "CAPG")]
#[cfg_attr(feature = "serde", serde(rename = "CAPG"))]
Capg,
#[yaserde(rename = "CAPI")]
#[cfg_attr(feature = "serde", serde(rename = "CAPI"))]
Capi,
#[yaserde(rename = "DRCA")]
#[cfg_attr(feature = "serde", serde(rename = "DRCA"))]
Drca,
#[yaserde(rename = "DVCA")]
#[cfg_attr(feature = "serde", serde(rename = "DVCA"))]
Dvca,
#[yaserde(rename = "CHAN")]
#[cfg_attr(feature = "serde", serde(rename = "CHAN"))]
Chan,
#[yaserde(rename = "COOP")]
#[cfg_attr(feature = "serde", serde(rename = "COOP"))]
Coop,
#[yaserde(rename = "CLSA")]
#[cfg_attr(feature = "serde", serde(rename = "CLSA"))]
Clsa,
#[yaserde(rename = "CONS")]
#[cfg_attr(feature = "serde", serde(rename = "CONS"))]
Cons,
#[yaserde(rename = "CONV")]
#[cfg_attr(feature = "serde", serde(rename = "CONV"))]
Conv,
#[yaserde(rename = "CREV")]
#[cfg_attr(feature = "serde", serde(rename = "CREV"))]
Crev,
#[yaserde(rename = "DECR")]
#[cfg_attr(feature = "serde", serde(rename = "DECR"))]
Decr,
#[yaserde(rename = "DETI")]
#[cfg_attr(feature = "serde", serde(rename = "DETI"))]
Deti,
#[yaserde(rename = "DSCL")]
#[cfg_attr(feature = "serde", serde(rename = "DSCL"))]
Dscl,
#[yaserde(rename = "DVOP")]
#[cfg_attr(feature = "serde", serde(rename = "DVOP"))]
Dvop,
#[yaserde(rename = "DRIP")]
#[cfg_attr(feature = "serde", serde(rename = "DRIP"))]
Drip,
#[yaserde(rename = "DRAW")]
#[cfg_attr(feature = "serde", serde(rename = "DRAW"))]
Draw,
#[yaserde(rename = "DTCH")]
#[cfg_attr(feature = "serde", serde(rename = "DTCH"))]
Dtch,
#[yaserde(rename = "EXOF")]
#[cfg_attr(feature = "serde", serde(rename = "EXOF"))]
Exof,
#[yaserde(rename = "REDM")]
#[cfg_attr(feature = "serde", serde(rename = "REDM"))]
Redm,
#[yaserde(rename = "MCAL")]
#[cfg_attr(feature = "serde", serde(rename = "MCAL"))]
Mcal,
#[yaserde(rename = "INCR")]
#[cfg_attr(feature = "serde", serde(rename = "INCR"))]
Incr,
#[yaserde(rename = "PPMT")]
#[cfg_attr(feature = "serde", serde(rename = "PPMT"))]
Ppmt,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "RHDI")]
#[cfg_attr(feature = "serde", serde(rename = "RHDI"))]
Rhdi,
#[yaserde(rename = "LIQU")]
#[cfg_attr(feature = "serde", serde(rename = "LIQU"))]
Liqu,
#[yaserde(rename = "EXTM")]
#[cfg_attr(feature = "serde", serde(rename = "EXTM"))]
Extm,
#[yaserde(rename = "MRGR")]
#[cfg_attr(feature = "serde", serde(rename = "MRGR"))]
Mrgr,
#[yaserde(rename = "NOOF")]
#[cfg_attr(feature = "serde", serde(rename = "NOOF"))]
Noof,
#[yaserde(rename = "CERT")]
#[cfg_attr(feature = "serde", serde(rename = "CERT"))]
Cert,
#[yaserde(rename = "ODLT")]
#[cfg_attr(feature = "serde", serde(rename = "ODLT"))]
Odlt,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "PARI")]
#[cfg_attr(feature = "serde", serde(rename = "PARI"))]
Pari,
#[yaserde(rename = "PCAL")]
#[cfg_attr(feature = "serde", serde(rename = "PCAL"))]
Pcal,
#[yaserde(rename = "PRED")]
#[cfg_attr(feature = "serde", serde(rename = "PRED"))]
Pred,
#[yaserde(rename = "PINK")]
#[cfg_attr(feature = "serde", serde(rename = "PINK"))]
Pink,
#[yaserde(rename = "PLAC")]
#[cfg_attr(feature = "serde", serde(rename = "PLAC"))]
Plac,
#[yaserde(rename = "PDEF")]
#[cfg_attr(feature = "serde", serde(rename = "PDEF"))]
Pdef,
#[yaserde(rename = "PRIO")]
#[cfg_attr(feature = "serde", serde(rename = "PRIO"))]
Prio,
#[yaserde(rename = "BPUT")]
#[cfg_attr(feature = "serde", serde(rename = "BPUT"))]
Bput,
#[yaserde(rename = "REDO")]
#[cfg_attr(feature = "serde", serde(rename = "REDO"))]
Redo,
#[yaserde(rename = "REMK")]
#[cfg_attr(feature = "serde", serde(rename = "REMK"))]
Remk,
#[yaserde(rename = "BIDS")]
#[cfg_attr(feature = "serde", serde(rename = "BIDS"))]
Bids,
#[yaserde(rename = "SPLR")]
#[cfg_attr(feature = "serde", serde(rename = "SPLR"))]
Splr,
#[yaserde(rename = "RHTS")]
#[cfg_attr(feature = "serde", serde(rename = "RHTS"))]
Rhts,
#[yaserde(rename = "DVSC")]
#[cfg_attr(feature = "serde", serde(rename = "DVSC"))]
Dvsc,
#[yaserde(rename = "SHPR")]
#[cfg_attr(feature = "serde", serde(rename = "SHPR"))]
Shpr,
#[yaserde(rename = "SMAL")]
#[cfg_attr(feature = "serde", serde(rename = "SMAL"))]
Smal,
#[yaserde(rename = "SOFF")]
#[cfg_attr(feature = "serde", serde(rename = "SOFF"))]
Soff,
#[yaserde(rename = "DVSE")]
#[cfg_attr(feature = "serde", serde(rename = "DVSE"))]
Dvse,
#[yaserde(rename = "SPLF")]
#[cfg_attr(feature = "serde", serde(rename = "SPLF"))]
Splf,
#[yaserde(rename = "TREC")]
#[cfg_attr(feature = "serde", serde(rename = "TREC"))]
Trec,
#[yaserde(rename = "TEND")]
#[cfg_attr(feature = "serde", serde(rename = "TEND"))]
Tend,
#[yaserde(rename = "DLST")]
#[cfg_attr(feature = "serde", serde(rename = "DLST"))]
Dlst,
#[yaserde(rename = "SUSP")]
#[cfg_attr(feature = "serde", serde(rename = "SUSP"))]
Susp,
#[yaserde(rename = "EXWA")]
#[cfg_attr(feature = "serde", serde(rename = "EXWA"))]
Exwa,
#[yaserde(rename = "WTRC")]
#[cfg_attr(feature = "serde", serde(rename = "WTRC"))]
Wtrc,
#[yaserde(rename = "WRTH")]
#[cfg_attr(feature = "serde", serde(rename = "WRTH"))]
Wrth,
#[yaserde(rename = "ACCU")]
#[cfg_attr(feature = "serde", serde(rename = "ACCU"))]
Accu,
#[yaserde(rename = "MTNG")]
#[cfg_attr(feature = "serde", serde(rename = "MTNG"))]
Mtng,
#[yaserde(rename = "INFO")]
#[cfg_attr(feature = "serde", serde(rename = "INFO"))]
Info,
#[yaserde(rename = "TNDP")]
#[cfg_attr(feature = "serde", serde(rename = "TNDP"))]
Tndp,
#[yaserde(rename = "RCLA")]
#[cfg_attr(feature = "serde", serde(rename = "RCLA"))]
Rcla,
__Unknown__(String),
}
impl Default for CorporateActionEventType38Code {
fn default() -> CorporateActionEventType38Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateActionEventType38Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct CountryCode (pub String);
crate::simple_type!(CountryCode);
impl Validate for CountryCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum CreditDebitCode {
#[yaserde(rename = "CRDT")]
#[cfg_attr(feature = "serde", serde(rename = "CRDT"))]
Crdt,
#[yaserde(rename = "DBIT")]
#[cfg_attr(feature = "serde", serde(rename = "DBIT"))]
Dbit,
__Unknown__(String),
}
impl Default for CreditDebitCode {
fn default() -> CreditDebitCode {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CreditDebitCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Dti2024Identifier (pub String);
crate::simple_type!(Dti2024Identifier);
impl Validate for Dti2024Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct DateAndDateTime2Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<Isodate>,
#[yaserde(rename = "DtTm")]
#[cfg_attr(feature = "serde", serde(rename = "DtTm"))]
pub dt_tm: Option<IsodateTime>,
}
impl Validate for DateAndDateTime2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
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:semt.017.001.14")]
pub enum DateType3Code {
#[yaserde(rename = "VARI")]
#[cfg_attr(feature = "serde", serde(rename = "VARI"))]
Vari,
__Unknown__(String),
}
impl Default for DateType3Code {
fn default() -> DateType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DateType3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct DecimalNumber (pub String);
crate::simple_type!(DecimalNumber);
impl Validate for DecimalNumber {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum DeliveryReceiptType2Code {
#[yaserde(rename = "FREE")]
#[cfg_attr(feature = "serde", serde(rename = "FREE"))]
Free,
#[yaserde(rename = "APMT")]
#[cfg_attr(feature = "serde", serde(rename = "APMT"))]
Apmt,
__Unknown__(String),
}
impl Default for DeliveryReceiptType2Code {
fn default() -> DeliveryReceiptType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DeliveryReceiptType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct DigitalPaymentSettlement2 {
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification19,
#[yaserde(rename = "ElctrncMnyTknSttlmQty")]
#[cfg_attr(feature = "serde", serde(rename = "ElctrncMnyTknSttlmQty"))]
pub elctrnc_mny_tkn_sttlm_qty: Max30DecimalNumber,
#[yaserde(rename = "CshSttlmSysPlc")]
#[cfg_attr(feature = "serde", serde(rename = "CshSttlmSysPlc"))]
pub csh_sttlm_sys_plc: CashSettlementSystemPlace1Choice,
}
impl Validate for DigitalPaymentSettlement2 {}
#[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:semt.017.001.14")]
pub enum DistributionPolicy1Code {
#[yaserde(rename = "DIST")]
#[cfg_attr(feature = "serde", serde(rename = "DIST"))]
Dist,
#[yaserde(rename = "ACCU")]
#[cfg_attr(feature = "serde", serde(rename = "ACCU"))]
Accu,
__Unknown__(String),
}
impl Default for DistributionPolicy1Code {
fn default() -> DistributionPolicy1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DistributionPolicy1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Document {
#[yaserde(rename = "SctiesTxPstngRpt")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesTxPstngRpt"))]
pub scties_tx_pstng_rpt: SecuritiesTransactionPostingReportV14,
}
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:semt.017.001.14")]
pub enum EventFrequency4Code {
#[yaserde(rename = "YEAR")]
#[cfg_attr(feature = "serde", serde(rename = "YEAR"))]
Year,
#[yaserde(rename = "ADHO")]
#[cfg_attr(feature = "serde", serde(rename = "ADHO"))]
Adho,
#[yaserde(rename = "MNTH")]
#[cfg_attr(feature = "serde", serde(rename = "MNTH"))]
Mnth,
#[yaserde(rename = "DAIL")]
#[cfg_attr(feature = "serde", serde(rename = "DAIL"))]
Dail,
#[yaserde(rename = "INDA")]
#[cfg_attr(feature = "serde", serde(rename = "INDA"))]
Inda,
#[yaserde(rename = "WEEK")]
#[cfg_attr(feature = "serde", serde(rename = "WEEK"))]
Week,
__Unknown__(String),
}
impl Default for EventFrequency4Code {
fn default() -> EventFrequency4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for EventFrequency4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact3NumericText (pub String);
crate::simple_type!(Exact3NumericText);
impl Validate for Exact3NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact4AlphaNumericText (pub String);
crate::simple_type!(Exact4AlphaNumericText);
impl Validate for Exact4AlphaNumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact5NumericText (pub String);
crate::simple_type!(Exact5NumericText);
impl Validate for Exact5NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ExternalFinancialInstrumentIdentificationType1Code (pub String);
crate::simple_type!(ExternalFinancialInstrumentIdentificationType1Code);
impl Validate for ExternalFinancialInstrumentIdentificationType1Code {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 4 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 4 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct FinancialInstrument72 {
#[yaserde(rename = "SplmtryId")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryId"))]
pub splmtry_id: Max35Text,
#[yaserde(rename = "SctiesForm")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesForm"))]
pub scties_form: FormOfSecurity1Code,
#[yaserde(rename = "ClssTp")]
#[cfg_attr(feature = "serde", serde(rename = "ClssTp"))]
pub clss_tp: Max35Text,
#[yaserde(rename = "DstrbtnPlcy")]
#[cfg_attr(feature = "serde", serde(rename = "DstrbtnPlcy"))]
pub dstrbtn_plcy: DistributionPolicy1Code,
#[yaserde(rename = "ClssfctnTp")]
#[cfg_attr(feature = "serde", serde(rename = "ClssfctnTp"))]
pub clssfctn_tp: SecurityClassificationType2Choice,
}
impl Validate for FinancialInstrument72 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct FinancialInstrumentDetails48 {
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification19,
#[yaserde(rename = "InvstmtFndsFinInstrmAttrbts")]
#[cfg_attr(feature = "serde", serde(rename = "InvstmtFndsFinInstrmAttrbts"))]
pub invstmt_fnds_fin_instrm_attrbts: FinancialInstrument72,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: PriceInformation30,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafeKeepingPlace5,
#[yaserde(rename = "OpngBal")]
#[cfg_attr(feature = "serde", serde(rename = "OpngBal"))]
pub opng_bal: OpeningBalance5,
#[yaserde(rename = "ClsgBal")]
#[cfg_attr(feature = "serde", serde(rename = "ClsgBal"))]
pub clsg_bal: ClosingBalance5,
#[yaserde(rename = "Tx")]
#[cfg_attr(feature = "serde", serde(rename = "Tx"))]
pub tx: Vec<Transaction165>,
}
impl Validate for FinancialInstrumentDetails48 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct FinancialInstrumentDetails49 {
#[yaserde(rename = "FinInstrmId")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmId"))]
pub fin_instrm_id: SecurityIdentification19,
#[yaserde(rename = "InvstmtFndsFinInstrmAttrbts")]
#[cfg_attr(feature = "serde", serde(rename = "InvstmtFndsFinInstrmAttrbts"))]
pub invstmt_fnds_fin_instrm_attrbts: FinancialInstrument72,
#[yaserde(rename = "PricDtls")]
#[cfg_attr(feature = "serde", serde(rename = "PricDtls"))]
pub pric_dtls: PriceInformation30,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafeKeepingPlace5,
#[yaserde(rename = "OpngBal")]
#[cfg_attr(feature = "serde", serde(rename = "OpngBal"))]
pub opng_bal: OpeningBalance5,
#[yaserde(rename = "ClsgBal")]
#[cfg_attr(feature = "serde", serde(rename = "ClsgBal"))]
pub clsg_bal: ClosingBalance5,
#[yaserde(rename = "Tx")]
#[cfg_attr(feature = "serde", serde(rename = "Tx"))]
pub tx: Vec<Transaction167>,
}
impl Validate for FinancialInstrumentDetails49 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct FinancialInstrumentQuantity33Choice {
#[yaserde(rename = "Unit")]
#[cfg_attr(feature = "serde", serde(rename = "Unit"))]
pub unit: Option<DecimalNumber>,
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: Option<ImpliedCurrencyAndAmount>,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: Option<ImpliedCurrencyAndAmount>,
#[yaserde(rename = "DgtlTknUnit")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlTknUnit"))]
pub dgtl_tkn_unit: Option<Max30DecimalNumber>,
}
impl Validate for FinancialInstrumentQuantity33Choice {}
#[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:semt.017.001.14")]
pub enum FormOfSecurity1Code {
#[yaserde(rename = "BEAR")]
#[cfg_attr(feature = "serde", serde(rename = "BEAR"))]
Bear,
#[yaserde(rename = "REGD")]
#[cfg_attr(feature = "serde", serde(rename = "REGD"))]
Regd,
__Unknown__(String),
}
impl Default for FormOfSecurity1Code {
fn default() -> FormOfSecurity1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FormOfSecurity1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Frequency25Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<EventFrequency4Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for Frequency25Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct GenericIdentification1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[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 GenericIdentification1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct GenericIdentification3 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
}
impl Validate for GenericIdentification3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct GenericIdentification30 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Exact4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
}
impl Validate for GenericIdentification30 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct GenericIdentification36 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
}
impl Validate for GenericIdentification36 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct GenericIdentification56 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Exact4AlphaNumericText,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: Max35Text,
#[yaserde(rename = "SchmeNm")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeNm"))]
pub schme_nm: Max35Text,
#[yaserde(rename = "Bal")]
#[cfg_attr(feature = "serde", serde(rename = "Bal"))]
pub bal: DecimalNumber,
}
impl Validate for GenericIdentification56 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct GenericIdentification78 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification30,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for GenericIdentification78 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isinoct2015Identifier (pub String);
crate::simple_type!(Isinoct2015Identifier);
impl Validate for Isinoct2015Identifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isodate (pub String);
crate::simple_type!(Isodate);
impl Validate for Isodate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct IsodateTime (pub String);
crate::simple_type!(IsodateTime);
impl Validate for IsodateTime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct IdentificationSource3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<ExternalFinancialInstrumentIdentificationType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<Max35Text>,
}
impl Validate for IdentificationSource3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ImpliedCurrencyAndAmount (pub String);
crate::simple_type!(ImpliedCurrencyAndAmount);
impl Validate for ImpliedCurrencyAndAmount {
fn validate(&self) -> Result<(), String> {
if self.0 < "0".parse::<String>().unwrap() {
return Err(format!("MinInclusive validation error: invalid value of 0! \nExpected: 0 >= 0.\nActual: 0 == {}", self.0));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Intermediary44 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification136,
#[yaserde(rename = "Role")]
#[cfg_attr(feature = "serde", serde(rename = "Role"))]
pub role: Role6Choice,
#[yaserde(rename = "Acct")]
#[cfg_attr(feature = "serde", serde(rename = "Acct"))]
pub acct: Account29,
}
impl Validate for Intermediary44 {}
#[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:semt.017.001.14")]
pub enum InvestmentFundRole2Code {
#[yaserde(rename = "FMCO")]
#[cfg_attr(feature = "serde", serde(rename = "FMCO"))]
Fmco,
#[yaserde(rename = "REGI")]
#[cfg_attr(feature = "serde", serde(rename = "REGI"))]
Regi,
#[yaserde(rename = "TRAG")]
#[cfg_attr(feature = "serde", serde(rename = "TRAG"))]
Trag,
#[yaserde(rename = "INTR")]
#[cfg_attr(feature = "serde", serde(rename = "INTR"))]
Intr,
#[yaserde(rename = "DIST")]
#[cfg_attr(feature = "serde", serde(rename = "DIST"))]
Dist,
#[yaserde(rename = "CONC")]
#[cfg_attr(feature = "serde", serde(rename = "CONC"))]
Conc,
#[yaserde(rename = "UCL1")]
#[cfg_attr(feature = "serde", serde(rename = "UCL1"))]
Ucl1,
#[yaserde(rename = "UCL2")]
#[cfg_attr(feature = "serde", serde(rename = "UCL2"))]
Ucl2,
#[yaserde(rename = "TRAN")]
#[cfg_attr(feature = "serde", serde(rename = "TRAN"))]
Tran,
__Unknown__(String),
}
impl Default for InvestmentFundRole2Code {
fn default() -> InvestmentFundRole2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for InvestmentFundRole2Code {}
#[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:semt.017.001.14")]
pub struct LetterOfGuarantee4Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for LetterOfGuarantee4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Micidentifier (pub String);
crate::simple_type!(Micidentifier);
impl Validate for Micidentifier {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum MarketClientSide1Code {
#[yaserde(rename = "CLNT")]
#[cfg_attr(feature = "serde", serde(rename = "CLNT"))]
Clnt,
#[yaserde(rename = "MAKT")]
#[cfg_attr(feature = "serde", serde(rename = "MAKT"))]
Makt,
__Unknown__(String),
}
impl Default for MarketClientSide1Code {
fn default() -> MarketClientSide1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MarketClientSide1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct MarketClientSide6Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<MarketClientSide1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for MarketClientSide6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct MarketIdentification1Choice {
#[yaserde(rename = "MktIdrCd")]
#[cfg_attr(feature = "serde", serde(rename = "MktIdrCd"))]
pub mkt_idr_cd: Option<Micidentifier>,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Option<Max35Text>,
}
impl Validate for MarketIdentification1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct MarketIdentification5Choice {
#[yaserde(rename = "MktIdrCd")]
#[cfg_attr(feature = "serde", serde(rename = "MktIdrCd"))]
pub mkt_idr_cd: Option<Micidentifier>,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Option<Max140Text>,
}
impl Validate for MarketIdentification5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct MarketIdentification84 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: MarketIdentification1Choice,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: MarketType8Choice,
}
impl Validate for MarketIdentification84 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct MarketIdentification98 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: MarketIdentification5Choice,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: MarketType19Choice,
}
impl Validate for MarketIdentification98 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct MarketType19Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<MarketType9Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for MarketType19Choice {}
#[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:semt.017.001.14")]
pub enum MarketType2Code {
#[yaserde(rename = "PRIM")]
#[cfg_attr(feature = "serde", serde(rename = "PRIM"))]
Prim,
#[yaserde(rename = "SECM")]
#[cfg_attr(feature = "serde", serde(rename = "SECM"))]
Secm,
#[yaserde(rename = "OTCO")]
#[cfg_attr(feature = "serde", serde(rename = "OTCO"))]
Otco,
#[yaserde(rename = "VARI")]
#[cfg_attr(feature = "serde", serde(rename = "VARI"))]
Vari,
#[yaserde(rename = "EXCH")]
#[cfg_attr(feature = "serde", serde(rename = "EXCH"))]
Exch,
__Unknown__(String),
}
impl Default for MarketType2Code {
fn default() -> MarketType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MarketType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct MarketType8Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<MarketType2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for MarketType8Choice {}
#[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:semt.017.001.14")]
pub enum MarketType9Code {
#[yaserde(rename = "FUND")]
#[cfg_attr(feature = "serde", serde(rename = "FUND"))]
Fund,
#[yaserde(rename = "LMAR")]
#[cfg_attr(feature = "serde", serde(rename = "LMAR"))]
Lmar,
#[yaserde(rename = "THEO")]
#[cfg_attr(feature = "serde", serde(rename = "THEO"))]
Theo,
#[yaserde(rename = "VEND")]
#[cfg_attr(feature = "serde", serde(rename = "VEND"))]
Vend,
#[yaserde(rename = "SCAS")]
#[cfg_attr(feature = "serde", serde(rename = "SCAS"))]
Scas,
__Unknown__(String),
}
impl Default for MarketType9Code {
fn default() -> MarketType9Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MarketType9Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max140Text (pub String);
crate::simple_type!(Max140Text);
impl Validate for Max140Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 140 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 140 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max16Text (pub String);
crate::simple_type!(Max16Text);
impl Validate for Max16Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 16 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 16 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max30DecimalNumber (pub String);
crate::simple_type!(Max30DecimalNumber);
impl Validate for Max30DecimalNumber {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max350Text (pub String);
crate::simple_type!(Max350Text);
impl Validate for Max350Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 350 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 350 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct 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 Max5NumericText (pub String);
crate::simple_type!(Max5NumericText);
impl Validate for Max5NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max70Text (pub String);
crate::simple_type!(Max70Text);
impl Validate for Max70Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 70 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 70 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct NameAndAddress5 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max350Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: PostalAddress1,
}
impl Validate for NameAndAddress5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct NettingEligibility4Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for NettingEligibility4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Number3Choice {
#[yaserde(rename = "Shrt")]
#[cfg_attr(feature = "serde", serde(rename = "Shrt"))]
pub shrt: Option<Exact3NumericText>,
#[yaserde(rename = "Lng")]
#[cfg_attr(feature = "serde", serde(rename = "Lng"))]
pub lng: Option<Exact5NumericText>,
}
impl Validate for Number3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct OpeningBalance5 {
#[yaserde(rename = "ShrtLngInd")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtLngInd"))]
pub shrt_lng_ind: ShortLong1Code,
#[yaserde(rename = "OpngBal")]
#[cfg_attr(feature = "serde", serde(rename = "OpngBal"))]
pub opng_bal: OpeningBalance6Choice,
}
impl Validate for OpeningBalance5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct OpeningBalance6Choice {
#[yaserde(rename = "Frst")]
#[cfg_attr(feature = "serde", serde(rename = "Frst"))]
pub frst: Option<BalanceQuantity14Choice>,
#[yaserde(rename = "Intrmy")]
#[cfg_attr(feature = "serde", serde(rename = "Intrmy"))]
pub intrmy: Option<BalanceQuantity14Choice>,
}
impl Validate for OpeningBalance6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct OriginalAndCurrentQuantities1 {
#[yaserde(rename = "FaceAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FaceAmt"))]
pub face_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "AmtsdVal")]
#[cfg_attr(feature = "serde", serde(rename = "AmtsdVal"))]
pub amtsd_val: ImpliedCurrencyAndAmount,
}
impl Validate for OriginalAndCurrentQuantities1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct OtherIdentification1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Sfx")]
#[cfg_attr(feature = "serde", serde(rename = "Sfx"))]
pub sfx: Max16Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: IdentificationSource3Choice,
}
impl Validate for OtherIdentification1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum OwnershipLegalRestrictions1Code {
A144,
#[yaserde(rename = "NRST")]
#[cfg_attr(feature = "serde", serde(rename = "NRST"))]
Nrst,
#[yaserde(rename = "RSTR")]
#[cfg_attr(feature = "serde", serde(rename = "RSTR"))]
Rstr,
__Unknown__(String),
}
impl Default for OwnershipLegalRestrictions1Code {
fn default() -> OwnershipLegalRestrictions1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OwnershipLegalRestrictions1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
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:semt.017.001.14")]
pub struct PartyIdentification120Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "PrtryId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryId"))]
pub prtry_id: Option<GenericIdentification36>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress5>,
}
impl Validate for PartyIdentification120Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentification125Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "PrtryId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryId"))]
pub prtry_id: Option<GenericIdentification1>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress5>,
}
impl Validate for PartyIdentification125Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentification127Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "PrtryId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtryId"))]
pub prtry_id: Option<GenericIdentification36>,
}
impl Validate for PartyIdentification127Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentification136 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification120Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PartyIdentification136 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentification139 {
#[yaserde(rename = "Pty")]
#[cfg_attr(feature = "serde", serde(rename = "Pty"))]
pub pty: PartyIdentification125Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PartyIdentification139 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentification144 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification127Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PartyIdentification144 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentification257Choice {
#[yaserde(rename = "AnyBIC")]
#[cfg_attr(feature = "serde", serde(rename = "AnyBIC"))]
pub any_b_i_c: Option<AnyBICDec2014Identifier>,
#[yaserde(rename = "NmAndAdr")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndAdr"))]
pub nm_and_adr: Option<NameAndAddress5>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
#[yaserde(rename = "DgtlLdgrId")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlLdgrId"))]
pub dgtl_ldgr_id: Option<Dti2024Identifier>,
}
impl Validate for PartyIdentification257Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentification314 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification257Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "PrcgId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgId"))]
pub prcg_id: Max35Text,
}
impl Validate for PartyIdentification314 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PartyIdentificationAndAccount195 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: PartyIdentification120Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
#[yaserde(rename = "SfkpgAcct")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgAcct"))]
pub sfkpg_acct: SecuritiesAccount19,
#[yaserde(rename = "BlckChainAdrOrWllt")]
#[cfg_attr(feature = "serde", serde(rename = "BlckChainAdrOrWllt"))]
pub blck_chain_adr_or_wllt: BlockChainAddressWallet3,
#[yaserde(rename = "PrcgId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcgId"))]
pub prcg_id: Max35Text,
}
impl Validate for PartyIdentificationAndAccount195 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct PercentageRate (pub String);
crate::simple_type!(PercentageRate);
impl Validate for PercentageRate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Period2 {
#[yaserde(rename = "FrDt")]
#[cfg_attr(feature = "serde", serde(rename = "FrDt"))]
pub fr_dt: Isodate,
#[yaserde(rename = "ToDt")]
#[cfg_attr(feature = "serde", serde(rename = "ToDt"))]
pub to_dt: Isodate,
}
impl Validate for Period2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Period7Choice {
#[yaserde(rename = "FrDtTmToDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "FrDtTmToDtTm"))]
pub fr_dt_tm_to_dt_tm: Option<DateTimePeriod1>,
#[yaserde(rename = "FrDtToDt")]
#[cfg_attr(feature = "serde", serde(rename = "FrDtToDt"))]
pub fr_dt_to_dt: Option<Period2>,
}
impl Validate for Period7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PlaceOfClearingIdentification2 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: AnyBICDec2014Identifier,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PlaceOfClearingIdentification2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PlaceOfTradeIdentification1 {
#[yaserde(rename = "MktTpAndId")]
#[cfg_attr(feature = "serde", serde(rename = "MktTpAndId"))]
pub mkt_tp_and_id: MarketIdentification84,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for PlaceOfTradeIdentification1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PostalAddress1 {
#[yaserde(rename = "AdrTp")]
#[cfg_attr(feature = "serde", serde(rename = "AdrTp"))]
pub adr_tp: AddressType2Code,
#[yaserde(rename = "AdrLine")]
#[cfg_attr(feature = "serde", serde(rename = "AdrLine"))]
pub adr_line: Vec<Max70Text>,
#[yaserde(rename = "StrtNm")]
#[cfg_attr(feature = "serde", serde(rename = "StrtNm"))]
pub strt_nm: Max70Text,
#[yaserde(rename = "BldgNb")]
#[cfg_attr(feature = "serde", serde(rename = "BldgNb"))]
pub bldg_nb: Max16Text,
#[yaserde(rename = "PstCd")]
#[cfg_attr(feature = "serde", serde(rename = "PstCd"))]
pub pst_cd: Max16Text,
#[yaserde(rename = "TwnNm")]
#[cfg_attr(feature = "serde", serde(rename = "TwnNm"))]
pub twn_nm: Max35Text,
#[yaserde(rename = "CtrySubDvsn")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsn"))]
pub ctry_sub_dvsn: Max35Text,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: CountryCode,
}
impl Validate for PostalAddress1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PriceInformation30 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: TypeOfPrice48Choice,
#[yaserde(rename = "ValTp")]
#[cfg_attr(feature = "serde", serde(rename = "ValTp"))]
pub val_tp: YieldedOrValueType1Choice,
#[yaserde(rename = "Val")]
#[cfg_attr(feature = "serde", serde(rename = "Val"))]
pub val: PriceRateOrAmountOrUnknown2Choice,
#[yaserde(rename = "SrcOfPric")]
#[cfg_attr(feature = "serde", serde(rename = "SrcOfPric"))]
pub src_of_pric: MarketIdentification98,
#[yaserde(rename = "QtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "QtnDt"))]
pub qtn_dt: DateAndDateTime2Choice,
}
impl Validate for PriceInformation30 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PriceRateOrAmountOrUnknown2Choice {
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: Option<PercentageRate>,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Option<ActiveOrHistoricCurrencyAnd13DecimalAmount>,
#[yaserde(rename = "UknwnInd")]
#[cfg_attr(feature = "serde", serde(rename = "UknwnInd"))]
pub uknwn_ind: Option<YesNoIndicator>,
}
impl Validate for PriceRateOrAmountOrUnknown2Choice {}
#[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:semt.017.001.14")]
pub enum PriceValueType1Code {
#[yaserde(rename = "DISC")]
#[cfg_attr(feature = "serde", serde(rename = "DISC"))]
Disc,
#[yaserde(rename = "PREM")]
#[cfg_attr(feature = "serde", serde(rename = "PREM"))]
Prem,
#[yaserde(rename = "PARV")]
#[cfg_attr(feature = "serde", serde(rename = "PARV"))]
Parv,
__Unknown__(String),
}
impl Default for PriceValueType1Code {
fn default() -> PriceValueType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PriceValueType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct PurposeCode7Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SecuritiesAccountPurposeType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for PurposeCode7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Quantity51Choice {
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: Option<FinancialInstrumentQuantity33Choice>,
#[yaserde(rename = "OrgnlAndCurFace")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlAndCurFace"))]
pub orgnl_and_cur_face: Option<OriginalAndCurrentQuantities1>,
}
impl Validate for Quantity51Choice {}
#[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:semt.017.001.14")]
pub enum ReceiveDelivery1Code {
#[yaserde(rename = "DELI")]
#[cfg_attr(feature = "serde", serde(rename = "DELI"))]
Deli,
#[yaserde(rename = "RECE")]
#[cfg_attr(feature = "serde", serde(rename = "RECE"))]
Rece,
__Unknown__(String),
}
impl Default for ReceiveDelivery1Code {
fn default() -> ReceiveDelivery1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ReceiveDelivery1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum Registration1Code {
#[yaserde(rename = "NREG")]
#[cfg_attr(feature = "serde", serde(rename = "NREG"))]
Nreg,
#[yaserde(rename = "YREG")]
#[cfg_attr(feature = "serde", serde(rename = "YREG"))]
Yreg,
__Unknown__(String),
}
impl Default for Registration1Code {
fn default() -> Registration1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Registration1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Registration9Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<Registration1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for Registration9Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct RepurchaseType22Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<RepurchaseType9Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for RepurchaseType22Choice {}
#[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:semt.017.001.14")]
pub enum RepurchaseType9Code {
#[yaserde(rename = "PAIR")]
#[cfg_attr(feature = "serde", serde(rename = "PAIR"))]
Pair,
#[yaserde(rename = "PADJ")]
#[cfg_attr(feature = "serde", serde(rename = "PADJ"))]
Padj,
#[yaserde(rename = "RATE")]
#[cfg_attr(feature = "serde", serde(rename = "RATE"))]
Rate,
#[yaserde(rename = "CALL")]
#[cfg_attr(feature = "serde", serde(rename = "CALL"))]
Call,
#[yaserde(rename = "ROLP")]
#[cfg_attr(feature = "serde", serde(rename = "ROLP"))]
Rolp,
#[yaserde(rename = "CADJ")]
#[cfg_attr(feature = "serde", serde(rename = "CADJ"))]
Cadj,
#[yaserde(rename = "TOPU")]
#[cfg_attr(feature = "serde", serde(rename = "TOPU"))]
Topu,
#[yaserde(rename = "WTHD")]
#[cfg_attr(feature = "serde", serde(rename = "WTHD"))]
Wthd,
__Unknown__(String),
}
impl Default for RepurchaseType9Code {
fn default() -> RepurchaseType9Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for RepurchaseType9Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Restriction5Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<OwnershipLegalRestrictions1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for Restriction5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Role6Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<InvestmentFundRole2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
#[yaserde(rename = "Txt")]
#[cfg_attr(feature = "serde", serde(rename = "Txt"))]
pub txt: Option<Max350Text>,
}
impl Validate for Role6Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SafeKeepingPlace5 {
#[yaserde(rename = "SfkpgPlcFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlcFrmt"))]
pub sfkpg_plc_frmt: SafekeepingPlaceFormat41Choice,
#[yaserde(rename = "LEI")]
#[cfg_attr(feature = "serde", serde(rename = "LEI"))]
pub lei: Leiidentifier,
}
impl Validate for SafeKeepingPlace5 {}
#[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:semt.017.001.14")]
pub enum SafekeepingPlace1Code {
#[yaserde(rename = "CUST")]
#[cfg_attr(feature = "serde", serde(rename = "CUST"))]
Cust,
#[yaserde(rename = "ICSD")]
#[cfg_attr(feature = "serde", serde(rename = "ICSD"))]
Icsd,
#[yaserde(rename = "NCSD")]
#[cfg_attr(feature = "serde", serde(rename = "NCSD"))]
Ncsd,
#[yaserde(rename = "SHHE")]
#[cfg_attr(feature = "serde", serde(rename = "SHHE"))]
Shhe,
__Unknown__(String),
}
impl Default for SafekeepingPlace1Code {
fn default() -> SafekeepingPlace1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SafekeepingPlace1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum SafekeepingPlace3Code {
#[yaserde(rename = "SHHE")]
#[cfg_attr(feature = "serde", serde(rename = "SHHE"))]
Shhe,
__Unknown__(String),
}
impl Default for SafekeepingPlace3Code {
fn default() -> SafekeepingPlace3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SafekeepingPlace3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SafekeepingPlaceFormat41Choice {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Option<SafekeepingPlaceTypeAndText8>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Option<CountryCode>,
#[yaserde(rename = "DgtlLdgrId")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlLdgrId"))]
pub dgtl_ldgr_id: Option<Dti2024Identifier>,
#[yaserde(rename = "TpAndId")]
#[cfg_attr(feature = "serde", serde(rename = "TpAndId"))]
pub tp_and_id: Option<SafekeepingPlaceTypeAndIdentification1>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification78>,
}
impl Validate for SafekeepingPlaceFormat41Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SafekeepingPlaceTypeAndIdentification1 {
#[yaserde(rename = "SfkpgPlcTp")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlcTp"))]
pub sfkpg_plc_tp: SafekeepingPlace1Code,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: AnyBICDec2014Identifier,
}
impl Validate for SafekeepingPlaceTypeAndIdentification1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SafekeepingPlaceTypeAndText8 {
#[yaserde(rename = "SfkpgPlcTp")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlcTp"))]
pub sfkpg_plc_tp: SafekeepingPlace3Code,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for SafekeepingPlaceTypeAndText8 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecuritiesAccount19 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification30,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
}
impl Validate for SecuritiesAccount19 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecuritiesAccount25 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: PurposeCode7Choice,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
}
impl Validate for SecuritiesAccount25 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecuritiesAccount36 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: GenericIdentification30,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
#[yaserde(rename = "Dsgnt")]
#[cfg_attr(feature = "serde", serde(rename = "Dsgnt"))]
pub dsgnt: Max35Text,
}
impl Validate for SecuritiesAccount36 {}
#[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:semt.017.001.14")]
pub enum SecuritiesAccountPurposeType1Code {
#[yaserde(rename = "MARG")]
#[cfg_attr(feature = "serde", serde(rename = "MARG"))]
Marg,
#[yaserde(rename = "SHOR")]
#[cfg_attr(feature = "serde", serde(rename = "SHOR"))]
Shor,
#[yaserde(rename = "ABRD")]
#[cfg_attr(feature = "serde", serde(rename = "ABRD"))]
Abrd,
#[yaserde(rename = "CEND")]
#[cfg_attr(feature = "serde", serde(rename = "CEND"))]
Cend,
#[yaserde(rename = "DVPA")]
#[cfg_attr(feature = "serde", serde(rename = "DVPA"))]
Dvpa,
#[yaserde(rename = "PHYS")]
#[cfg_attr(feature = "serde", serde(rename = "PHYS"))]
Phys,
__Unknown__(String),
}
impl Default for SecuritiesAccountPurposeType1Code {
fn default() -> SecuritiesAccountPurposeType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SecuritiesAccountPurposeType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecuritiesRTGS4Choice {
#[yaserde(rename = "Ind")]
#[cfg_attr(feature = "serde", serde(rename = "Ind"))]
pub ind: Option<YesNoIndicator>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for SecuritiesRTGS4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecuritiesTransactionPostingReportV14 {
#[yaserde(rename = "Pgntn")]
#[cfg_attr(feature = "serde", serde(rename = "Pgntn"))]
pub pgntn: Pagination1,
#[yaserde(rename = "StmtGnlDtls")]
#[cfg_attr(feature = "serde", serde(rename = "StmtGnlDtls"))]
pub stmt_gnl_dtls: Statement79,
#[yaserde(rename = "AcctOwnr")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnr"))]
pub acct_ownr: PartyIdentification144,
#[yaserde(rename = "SfkpgAcct")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgAcct"))]
pub sfkpg_acct: SecuritiesAccount36,
#[yaserde(rename = "BlckChainAdrOrWllt")]
#[cfg_attr(feature = "serde", serde(rename = "BlckChainAdrOrWllt"))]
pub blck_chain_adr_or_wllt: BlockChainAddressWallet4,
#[yaserde(rename = "IntrmyInf")]
#[cfg_attr(feature = "serde", serde(rename = "IntrmyInf"))]
pub intrmy_inf: Vec<Intermediary44>,
#[yaserde(rename = "FinInstrmDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmDtls"))]
pub fin_instrm_dtls: Vec<FinancialInstrumentDetails48>,
#[yaserde(rename = "SubAcctDtls")]
#[cfg_attr(feature = "serde", serde(rename = "SubAcctDtls"))]
pub sub_acct_dtls: Vec<SubAccountIdentification74>,
}
impl Validate for SecuritiesTransactionPostingReportV14 {}
#[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:semt.017.001.14")]
pub enum SecuritiesTransactionType27Code {
#[yaserde(rename = "BSBK")]
#[cfg_attr(feature = "serde", serde(rename = "BSBK"))]
Bsbk,
#[yaserde(rename = "BYIY")]
#[cfg_attr(feature = "serde", serde(rename = "BYIY"))]
Byiy,
#[yaserde(rename = "CNCB")]
#[cfg_attr(feature = "serde", serde(rename = "CNCB"))]
Cncb,
#[yaserde(rename = "COLI")]
#[cfg_attr(feature = "serde", serde(rename = "COLI"))]
Coli,
#[yaserde(rename = "COLO")]
#[cfg_attr(feature = "serde", serde(rename = "COLO"))]
Colo,
#[yaserde(rename = "CONV")]
#[cfg_attr(feature = "serde", serde(rename = "CONV"))]
Conv,
#[yaserde(rename = "FCTA")]
#[cfg_attr(feature = "serde", serde(rename = "FCTA"))]
Fcta,
#[yaserde(rename = "INSP")]
#[cfg_attr(feature = "serde", serde(rename = "INSP"))]
Insp,
#[yaserde(rename = "ISSU")]
#[cfg_attr(feature = "serde", serde(rename = "ISSU"))]
Issu,
#[yaserde(rename = "MKDW")]
#[cfg_attr(feature = "serde", serde(rename = "MKDW"))]
Mkdw,
#[yaserde(rename = "MKUP")]
#[cfg_attr(feature = "serde", serde(rename = "MKUP"))]
Mkup,
#[yaserde(rename = "NETT")]
#[cfg_attr(feature = "serde", serde(rename = "NETT"))]
Nett,
#[yaserde(rename = "NSYN")]
#[cfg_attr(feature = "serde", serde(rename = "NSYN"))]
Nsyn,
#[yaserde(rename = "OWNE")]
#[cfg_attr(feature = "serde", serde(rename = "OWNE"))]
Owne,
#[yaserde(rename = "OWNI")]
#[cfg_attr(feature = "serde", serde(rename = "OWNI"))]
Owni,
#[yaserde(rename = "PAIR")]
#[cfg_attr(feature = "serde", serde(rename = "PAIR"))]
Pair,
#[yaserde(rename = "PLAC")]
#[cfg_attr(feature = "serde", serde(rename = "PLAC"))]
Plac,
#[yaserde(rename = "PORT")]
#[cfg_attr(feature = "serde", serde(rename = "PORT"))]
Port,
#[yaserde(rename = "REAL")]
#[cfg_attr(feature = "serde", serde(rename = "REAL"))]
Real,
#[yaserde(rename = "REDI")]
#[cfg_attr(feature = "serde", serde(rename = "REDI"))]
Redi,
#[yaserde(rename = "REDM")]
#[cfg_attr(feature = "serde", serde(rename = "REDM"))]
Redm,
#[yaserde(rename = "RELE")]
#[cfg_attr(feature = "serde", serde(rename = "RELE"))]
Rele,
#[yaserde(rename = "REPU")]
#[cfg_attr(feature = "serde", serde(rename = "REPU"))]
Repu,
#[yaserde(rename = "RODE")]
#[cfg_attr(feature = "serde", serde(rename = "RODE"))]
Rode,
#[yaserde(rename = "RVPO")]
#[cfg_attr(feature = "serde", serde(rename = "RVPO"))]
Rvpo,
#[yaserde(rename = "SBBK")]
#[cfg_attr(feature = "serde", serde(rename = "SBBK"))]
Sbbk,
#[yaserde(rename = "SBRE")]
#[cfg_attr(feature = "serde", serde(rename = "SBRE"))]
Sbre,
#[yaserde(rename = "SECB")]
#[cfg_attr(feature = "serde", serde(rename = "SECB"))]
Secb,
#[yaserde(rename = "SECL")]
#[cfg_attr(feature = "serde", serde(rename = "SECL"))]
Secl,
#[yaserde(rename = "SLRE")]
#[cfg_attr(feature = "serde", serde(rename = "SLRE"))]
Slre,
#[yaserde(rename = "SUBS")]
#[cfg_attr(feature = "serde", serde(rename = "SUBS"))]
Subs,
#[yaserde(rename = "SYND")]
#[cfg_attr(feature = "serde", serde(rename = "SYND"))]
Synd,
#[yaserde(rename = "TBAC")]
#[cfg_attr(feature = "serde", serde(rename = "TBAC"))]
Tbac,
#[yaserde(rename = "TRAD")]
#[cfg_attr(feature = "serde", serde(rename = "TRAD"))]
Trad,
#[yaserde(rename = "TRPO")]
#[cfg_attr(feature = "serde", serde(rename = "TRPO"))]
Trpo,
#[yaserde(rename = "TRVO")]
#[cfg_attr(feature = "serde", serde(rename = "TRVO"))]
Trvo,
#[yaserde(rename = "TURN")]
#[cfg_attr(feature = "serde", serde(rename = "TURN"))]
Turn,
#[yaserde(rename = "CLAI")]
#[cfg_attr(feature = "serde", serde(rename = "CLAI"))]
Clai,
#[yaserde(rename = "CORP")]
#[cfg_attr(feature = "serde", serde(rename = "CORP"))]
Corp,
#[yaserde(rename = "AUTO")]
#[cfg_attr(feature = "serde", serde(rename = "AUTO"))]
Auto,
#[yaserde(rename = "SWIF")]
#[cfg_attr(feature = "serde", serde(rename = "SWIF"))]
Swif,
#[yaserde(rename = "SWIT")]
#[cfg_attr(feature = "serde", serde(rename = "SWIT"))]
Swit,
#[yaserde(rename = "ETFT")]
#[cfg_attr(feature = "serde", serde(rename = "ETFT"))]
Etft,
#[yaserde(rename = "REBL")]
#[cfg_attr(feature = "serde", serde(rename = "REBL"))]
Rebl,
#[yaserde(rename = "TRIN")]
#[cfg_attr(feature = "serde", serde(rename = "TRIN"))]
Trin,
#[yaserde(rename = "TOUT")]
#[cfg_attr(feature = "serde", serde(rename = "TOUT"))]
Tout,
__Unknown__(String),
}
impl Default for SecuritiesTransactionType27Code {
fn default() -> SecuritiesTransactionType27Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SecuritiesTransactionType27Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecuritiesTransactionType48Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SecuritiesTransactionType27Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for SecuritiesTransactionType48Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecurityClassificationType2Choice {
#[yaserde(rename = "CFI")]
#[cfg_attr(feature = "serde", serde(rename = "CFI"))]
pub cfi: Option<Cfioct2015Identifier>,
#[yaserde(rename = "AltrnClssfctn")]
#[cfg_attr(feature = "serde", serde(rename = "AltrnClssfctn"))]
pub altrn_clssfctn: Option<GenericIdentification3>,
}
impl Validate for SecurityClassificationType2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SecurityIdentification19 {
#[yaserde(rename = "ISIN")]
#[cfg_attr(feature = "serde", serde(rename = "ISIN"))]
pub isin: Isinoct2015Identifier,
#[yaserde(rename = "OthrId")]
#[cfg_attr(feature = "serde", serde(rename = "OthrId"))]
pub othr_id: Vec<OtherIdentification1>,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max140Text,
}
impl Validate for SecurityIdentification19 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlementDate17Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<DateAndDateTime2Choice>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<SettlementDateCode7Choice>,
}
impl Validate for SettlementDate17Choice {}
#[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:semt.017.001.14")]
pub enum SettlementDate4Code {
#[yaserde(rename = "WISS")]
#[cfg_attr(feature = "serde", serde(rename = "WISS"))]
Wiss,
__Unknown__(String),
}
impl Default for SettlementDate4Code {
fn default() -> SettlementDate4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementDate4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlementDateCode7Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlementDate4Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for SettlementDateCode7Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlementDetails231 {
#[yaserde(rename = "SttlmTxCond")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmTxCond"))]
pub sttlm_tx_cond: Vec<SettlementTransactionCondition41Choice>,
#[yaserde(rename = "SttlgCpcty")]
#[cfg_attr(feature = "serde", serde(rename = "SttlgCpcty"))]
pub sttlg_cpcty: SettlingCapacity7Choice,
#[yaserde(rename = "StmpDtyTaxBsis")]
#[cfg_attr(feature = "serde", serde(rename = "StmpDtyTaxBsis"))]
pub stmp_dty_tax_bsis: GenericIdentification30,
#[yaserde(rename = "SctiesRTGS")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesRTGS"))]
pub scties_rtgs: SecuritiesRTGS4Choice,
#[yaserde(rename = "Regn")]
#[cfg_attr(feature = "serde", serde(rename = "Regn"))]
pub regn: Registration9Choice,
#[yaserde(rename = "BnfclOwnrsh")]
#[cfg_attr(feature = "serde", serde(rename = "BnfclOwnrsh"))]
pub bnfcl_ownrsh: BeneficialOwnership4Choice,
#[yaserde(rename = "CshClrSys")]
#[cfg_attr(feature = "serde", serde(rename = "CshClrSys"))]
pub csh_clr_sys: CashSettlementSystem6Choice,
#[yaserde(rename = "TaxCpcty")]
#[cfg_attr(feature = "serde", serde(rename = "TaxCpcty"))]
pub tax_cpcty: TaxCapacityParty4Choice,
#[yaserde(rename = "RpTp")]
#[cfg_attr(feature = "serde", serde(rename = "RpTp"))]
pub rp_tp: RepurchaseType22Choice,
#[yaserde(rename = "MktClntSd")]
#[cfg_attr(feature = "serde", serde(rename = "MktClntSd"))]
pub mkt_clnt_sd: MarketClientSide6Choice,
#[yaserde(rename = "BlckTrad")]
#[cfg_attr(feature = "serde", serde(rename = "BlckTrad"))]
pub blck_trad: BlockTrade4Choice,
#[yaserde(rename = "LglRstrctns")]
#[cfg_attr(feature = "serde", serde(rename = "LglRstrctns"))]
pub lgl_rstrctns: Restriction5Choice,
#[yaserde(rename = "SttlmSysMtd")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmSysMtd"))]
pub sttlm_sys_mtd: SettlementSystemMethod4Choice,
#[yaserde(rename = "NetgElgblty")]
#[cfg_attr(feature = "serde", serde(rename = "NetgElgblty"))]
pub netg_elgblty: NettingEligibility4Choice,
#[yaserde(rename = "CCPElgblty")]
#[cfg_attr(feature = "serde", serde(rename = "CCPElgblty"))]
pub ccp_elgblty: CentralCounterPartyEligibility4Choice,
#[yaserde(rename = "LttrOfGrnt")]
#[cfg_attr(feature = "serde", serde(rename = "LttrOfGrnt"))]
pub lttr_of_grnt: LetterOfGuarantee4Choice,
#[yaserde(rename = "PrtlSttlmInd")]
#[cfg_attr(feature = "serde", serde(rename = "PrtlSttlmInd"))]
pub prtl_sttlm_ind: SettlementTransactionCondition5Code,
}
impl Validate for SettlementDetails231 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlementOrCorporateActionEvent35Choice {
#[yaserde(rename = "SctiesTxTp")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesTxTp"))]
pub scties_tx_tp: Option<SecuritiesTransactionType48Choice>,
#[yaserde(rename = "CorpActnEvtTp")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnEvtTp"))]
pub corp_actn_evt_tp: Option<CorporateActionEventType110Choice>,
}
impl Validate for SettlementOrCorporateActionEvent35Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlementParties125 {
#[yaserde(rename = "Dpstry")]
#[cfg_attr(feature = "serde", serde(rename = "Dpstry"))]
pub dpstry: PartyIdentification314,
#[yaserde(rename = "Pty1")]
#[cfg_attr(feature = "serde", serde(rename = "Pty1"))]
pub pty_1: PartyIdentificationAndAccount195,
#[yaserde(rename = "Pty2")]
#[cfg_attr(feature = "serde", serde(rename = "Pty2"))]
pub pty_2: PartyIdentificationAndAccount195,
#[yaserde(rename = "Pty3")]
#[cfg_attr(feature = "serde", serde(rename = "Pty3"))]
pub pty_3: PartyIdentificationAndAccount195,
#[yaserde(rename = "Pty4")]
#[cfg_attr(feature = "serde", serde(rename = "Pty4"))]
pub pty_4: PartyIdentificationAndAccount195,
#[yaserde(rename = "Pty5")]
#[cfg_attr(feature = "serde", serde(rename = "Pty5"))]
pub pty_5: PartyIdentificationAndAccount195,
}
impl Validate for SettlementParties125 {}
#[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:semt.017.001.14")]
pub enum SettlementSystemMethod1Code {
#[yaserde(rename = "NSET")]
#[cfg_attr(feature = "serde", serde(rename = "NSET"))]
Nset,
#[yaserde(rename = "YSET")]
#[cfg_attr(feature = "serde", serde(rename = "YSET"))]
Yset,
__Unknown__(String),
}
impl Default for SettlementSystemMethod1Code {
fn default() -> SettlementSystemMethod1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementSystemMethod1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlementSystemMethod4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlementSystemMethod1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for SettlementSystemMethod4Choice {}
#[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:semt.017.001.14")]
pub enum SettlementTransactionCondition16Code {
#[yaserde(rename = "ADEA")]
#[cfg_attr(feature = "serde", serde(rename = "ADEA"))]
Adea,
#[yaserde(rename = "ASGN")]
#[cfg_attr(feature = "serde", serde(rename = "ASGN"))]
Asgn,
#[yaserde(rename = "BUTC")]
#[cfg_attr(feature = "serde", serde(rename = "BUTC"))]
Butc,
#[yaserde(rename = "CLEN")]
#[cfg_attr(feature = "serde", serde(rename = "CLEN"))]
Clen,
#[yaserde(rename = "DLWM")]
#[cfg_attr(feature = "serde", serde(rename = "DLWM"))]
Dlwm,
#[yaserde(rename = "DIRT")]
#[cfg_attr(feature = "serde", serde(rename = "DIRT"))]
Dirt,
#[yaserde(rename = "DRAW")]
#[cfg_attr(feature = "serde", serde(rename = "DRAW"))]
Draw,
#[yaserde(rename = "EXER")]
#[cfg_attr(feature = "serde", serde(rename = "EXER"))]
Exer,
#[yaserde(rename = "EXPI")]
#[cfg_attr(feature = "serde", serde(rename = "EXPI"))]
Expi,
#[yaserde(rename = "FRCL")]
#[cfg_attr(feature = "serde", serde(rename = "FRCL"))]
Frcl,
#[yaserde(rename = "GATE")]
#[cfg_attr(feature = "serde", serde(rename = "GATE"))]
Gate,
#[yaserde(rename = "INTS")]
#[cfg_attr(feature = "serde", serde(rename = "INTS"))]
Ints,
#[yaserde(rename = "KNOC")]
#[cfg_attr(feature = "serde", serde(rename = "KNOC"))]
Knoc,
#[yaserde(rename = "NOMC")]
#[cfg_attr(feature = "serde", serde(rename = "NOMC"))]
Nomc,
#[yaserde(rename = "NACT")]
#[cfg_attr(feature = "serde", serde(rename = "NACT"))]
Nact,
#[yaserde(rename = "BPSS")]
#[cfg_attr(feature = "serde", serde(rename = "BPSS"))]
Bpss,
#[yaserde(rename = "PENS")]
#[cfg_attr(feature = "serde", serde(rename = "PENS"))]
Pens,
#[yaserde(rename = "PHYS")]
#[cfg_attr(feature = "serde", serde(rename = "PHYS"))]
Phys,
#[yaserde(rename = "RHYP")]
#[cfg_attr(feature = "serde", serde(rename = "RHYP"))]
Rhyp,
#[yaserde(rename = "RPTO")]
#[cfg_attr(feature = "serde", serde(rename = "RPTO"))]
Rpto,
#[yaserde(rename = "RESI")]
#[cfg_attr(feature = "serde", serde(rename = "RESI"))]
Resi,
#[yaserde(rename = "SHOR")]
#[cfg_attr(feature = "serde", serde(rename = "SHOR"))]
Shor,
#[yaserde(rename = "SPDL")]
#[cfg_attr(feature = "serde", serde(rename = "SPDL"))]
Spdl,
#[yaserde(rename = "SPST")]
#[cfg_attr(feature = "serde", serde(rename = "SPST"))]
Spst,
#[yaserde(rename = "TRAN")]
#[cfg_attr(feature = "serde", serde(rename = "TRAN"))]
Tran,
#[yaserde(rename = "TRIP")]
#[cfg_attr(feature = "serde", serde(rename = "TRIP"))]
Trip,
#[yaserde(rename = "UNEX")]
#[cfg_attr(feature = "serde", serde(rename = "UNEX"))]
Unex,
__Unknown__(String),
}
impl Default for SettlementTransactionCondition16Code {
fn default() -> SettlementTransactionCondition16Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementTransactionCondition16Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlementTransactionCondition41Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlementTransactionCondition16Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for SettlementTransactionCondition41Choice {}
#[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:semt.017.001.14")]
pub enum SettlementTransactionCondition5Code {
#[yaserde(rename = "PART")]
#[cfg_attr(feature = "serde", serde(rename = "PART"))]
Part,
#[yaserde(rename = "NPAR")]
#[cfg_attr(feature = "serde", serde(rename = "NPAR"))]
Npar,
#[yaserde(rename = "PARC")]
#[cfg_attr(feature = "serde", serde(rename = "PARC"))]
Parc,
#[yaserde(rename = "PARQ")]
#[cfg_attr(feature = "serde", serde(rename = "PARQ"))]
Parq,
__Unknown__(String),
}
impl Default for SettlementTransactionCondition5Code {
fn default() -> SettlementTransactionCondition5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlementTransactionCondition5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub enum SettlingCapacity2Code {
#[yaserde(rename = "SAGE")]
#[cfg_attr(feature = "serde", serde(rename = "SAGE"))]
Sage,
#[yaserde(rename = "CUST")]
#[cfg_attr(feature = "serde", serde(rename = "CUST"))]
Cust,
#[yaserde(rename = "SPRI")]
#[cfg_attr(feature = "serde", serde(rename = "SPRI"))]
Spri,
#[yaserde(rename = "RISP")]
#[cfg_attr(feature = "serde", serde(rename = "RISP"))]
Risp,
__Unknown__(String),
}
impl Default for SettlingCapacity2Code {
fn default() -> SettlingCapacity2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for SettlingCapacity2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SettlingCapacity7Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<SettlingCapacity2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for SettlingCapacity7Choice {}
#[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:semt.017.001.14")]
pub enum ShortLong1Code {
#[yaserde(rename = "SHOR")]
#[cfg_attr(feature = "serde", serde(rename = "SHOR"))]
Shor,
#[yaserde(rename = "LONG")]
#[cfg_attr(feature = "serde", serde(rename = "LONG"))]
Long,
__Unknown__(String),
}
impl Default for ShortLong1Code {
fn default() -> ShortLong1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ShortLong1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SimpleIdentificationInformation4 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for SimpleIdentificationInformation4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Statement79 {
#[yaserde(rename = "RptNb")]
#[cfg_attr(feature = "serde", serde(rename = "RptNb"))]
pub rpt_nb: Number3Choice,
#[yaserde(rename = "QryRef")]
#[cfg_attr(feature = "serde", serde(rename = "QryRef"))]
pub qry_ref: Max35Text,
#[yaserde(rename = "StmtId")]
#[cfg_attr(feature = "serde", serde(rename = "StmtId"))]
pub stmt_id: Max35Text,
#[yaserde(rename = "StmtPrd")]
#[cfg_attr(feature = "serde", serde(rename = "StmtPrd"))]
pub stmt_prd: Period7Choice,
#[yaserde(rename = "Frqcy")]
#[cfg_attr(feature = "serde", serde(rename = "Frqcy"))]
pub frqcy: Frequency25Choice,
#[yaserde(rename = "UpdTp")]
#[cfg_attr(feature = "serde", serde(rename = "UpdTp"))]
pub upd_tp: UpdateType15Choice,
#[yaserde(rename = "StmtBsis")]
#[cfg_attr(feature = "serde", serde(rename = "StmtBsis"))]
pub stmt_bsis: StatementBasis8Choice,
#[yaserde(rename = "ActvtyInd")]
#[cfg_attr(feature = "serde", serde(rename = "ActvtyInd"))]
pub actvty_ind: YesNoIndicator,
#[yaserde(rename = "SubAcctInd")]
#[cfg_attr(feature = "serde", serde(rename = "SubAcctInd"))]
pub sub_acct_ind: YesNoIndicator,
}
impl Validate for Statement79 {}
#[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:semt.017.001.14")]
pub enum StatementBasis2Code {
#[yaserde(rename = "SETT")]
#[cfg_attr(feature = "serde", serde(rename = "SETT"))]
Sett,
#[yaserde(rename = "TRAD")]
#[cfg_attr(feature = "serde", serde(rename = "TRAD"))]
Trad,
__Unknown__(String),
}
impl Default for StatementBasis2Code {
fn default() -> StatementBasis2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for StatementBasis2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct StatementBasis8Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<StatementBasis2Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for StatementBasis8Choice {}
#[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:semt.017.001.14")]
pub enum StatementUpdateType1Code {
#[yaserde(rename = "COMP")]
#[cfg_attr(feature = "serde", serde(rename = "COMP"))]
Comp,
#[yaserde(rename = "DELT")]
#[cfg_attr(feature = "serde", serde(rename = "DELT"))]
Delt,
__Unknown__(String),
}
impl Default for StatementUpdateType1Code {
fn default() -> StatementUpdateType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for StatementUpdateType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct SubAccountIdentification74 {
#[yaserde(rename = "AcctOwnr")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnr"))]
pub acct_ownr: PartyIdentification144,
#[yaserde(rename = "SfkpgAcct")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgAcct"))]
pub sfkpg_acct: SecuritiesAccount25,
#[yaserde(rename = "BlckChainAdrOrWllt")]
#[cfg_attr(feature = "serde", serde(rename = "BlckChainAdrOrWllt"))]
pub blck_chain_adr_or_wllt: BlockChainAddressWallet2,
#[yaserde(rename = "ActvtyInd")]
#[cfg_attr(feature = "serde", serde(rename = "ActvtyInd"))]
pub actvty_ind: YesNoIndicator,
#[yaserde(rename = "FinInstrmDtls")]
#[cfg_attr(feature = "serde", serde(rename = "FinInstrmDtls"))]
pub fin_instrm_dtls: Vec<FinancialInstrumentDetails49>,
}
impl Validate for SubAccountIdentification74 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
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:semt.017.001.14")]
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:semt.017.001.14")]
pub struct TaxCapacityParty4Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<TaxLiability1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for TaxCapacityParty4Choice {}
#[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:semt.017.001.14")]
pub enum TaxLiability1Code {
#[yaserde(rename = "PRIN")]
#[cfg_attr(feature = "serde", serde(rename = "PRIN"))]
Prin,
#[yaserde(rename = "AGEN")]
#[cfg_attr(feature = "serde", serde(rename = "AGEN"))]
Agen,
__Unknown__(String),
}
impl Default for TaxLiability1Code {
fn default() -> TaxLiability1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TaxLiability1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct TradeDate8Choice {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Option<DateAndDateTime2Choice>,
#[yaserde(rename = "DtCd")]
#[cfg_attr(feature = "serde", serde(rename = "DtCd"))]
pub dt_cd: Option<TradeDateCode3Choice>,
}
impl Validate for TradeDate8Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct TradeDateCode3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<DateType3Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for TradeDateCode3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Transaction165 {
#[yaserde(rename = "AcctOwnrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnrTxId"))]
pub acct_ownr_tx_id: Max35Text,
#[yaserde(rename = "AcctSvcrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrTxId"))]
pub acct_svcr_tx_id: Max35Text,
#[yaserde(rename = "MktInfrstrctrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "MktInfrstrctrTxId"))]
pub mkt_infrstrctr_tx_id: Max35Text,
#[yaserde(rename = "CtrPtyMktInfrstrctrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPtyMktInfrstrctrTxId"))]
pub ctr_pty_mkt_infrstrctr_tx_id: Max35Text,
#[yaserde(rename = "PrcrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcrTxId"))]
pub prcr_tx_id: Max35Text,
#[yaserde(rename = "TradId")]
#[cfg_attr(feature = "serde", serde(rename = "TradId"))]
pub trad_id: Vec<Max35Text>,
#[yaserde(rename = "UnqTxIdr")]
#[cfg_attr(feature = "serde", serde(rename = "UnqTxIdr"))]
pub unq_tx_idr: Utiidentifier,
#[yaserde(rename = "PoolId")]
#[cfg_attr(feature = "serde", serde(rename = "PoolId"))]
pub pool_id: Max35Text,
#[yaserde(rename = "CmonId")]
#[cfg_attr(feature = "serde", serde(rename = "CmonId"))]
pub cmon_id: Max35Text,
#[yaserde(rename = "CorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnEvtId"))]
pub corp_actn_evt_id: Max35Text,
#[yaserde(rename = "TrptyAgtSvcPrvdrCollTxId")]
#[cfg_attr(feature = "serde", serde(rename = "TrptyAgtSvcPrvdrCollTxId"))]
pub trpty_agt_svc_prvdr_coll_tx_id: Max35Text,
#[yaserde(rename = "ClntTrptyCollTxId")]
#[cfg_attr(feature = "serde", serde(rename = "ClntTrptyCollTxId"))]
pub clnt_trpty_coll_tx_id: Max35Text,
#[yaserde(rename = "ClntCollInstrId")]
#[cfg_attr(feature = "serde", serde(rename = "ClntCollInstrId"))]
pub clnt_coll_instr_id: Max35Text,
#[yaserde(rename = "TrptyAgtSvcPrvdrCollInstrId")]
#[cfg_attr(feature = "serde", serde(rename = "TrptyAgtSvcPrvdrCollInstrId"))]
pub trpty_agt_svc_prvdr_coll_instr_id: Max35Text,
#[yaserde(rename = "MstrRef")]
#[cfg_attr(feature = "serde", serde(rename = "MstrRef"))]
pub mstr_ref: Max35Text,
#[yaserde(rename = "ClntRef")]
#[cfg_attr(feature = "serde", serde(rename = "ClntRef"))]
pub clnt_ref: AdditionalReference10,
#[yaserde(rename = "AcctOwnrLegId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnrLegId"))]
pub acct_ownr_leg_id: Max35Text,
#[yaserde(rename = "AcctSvcrLegId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrLegId"))]
pub acct_svcr_leg_id: Max35Text,
#[yaserde(rename = "TxDtls")]
#[cfg_attr(feature = "serde", serde(rename = "TxDtls"))]
pub tx_dtls: TransactionDetails186,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
}
impl Validate for Transaction165 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct Transaction167 {
#[yaserde(rename = "AcctOwnrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnrTxId"))]
pub acct_ownr_tx_id: Max35Text,
#[yaserde(rename = "AcctSvcrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrTxId"))]
pub acct_svcr_tx_id: Max35Text,
#[yaserde(rename = "MktInfrstrctrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "MktInfrstrctrTxId"))]
pub mkt_infrstrctr_tx_id: Max35Text,
#[yaserde(rename = "CtrPtyMktInfrstrctrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "CtrPtyMktInfrstrctrTxId"))]
pub ctr_pty_mkt_infrstrctr_tx_id: Max35Text,
#[yaserde(rename = "PrcrTxId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcrTxId"))]
pub prcr_tx_id: Max35Text,
#[yaserde(rename = "TradId")]
#[cfg_attr(feature = "serde", serde(rename = "TradId"))]
pub trad_id: Vec<Max35Text>,
#[yaserde(rename = "UnqTxIdr")]
#[cfg_attr(feature = "serde", serde(rename = "UnqTxIdr"))]
pub unq_tx_idr: Utiidentifier,
#[yaserde(rename = "PoolId")]
#[cfg_attr(feature = "serde", serde(rename = "PoolId"))]
pub pool_id: Max35Text,
#[yaserde(rename = "CmonId")]
#[cfg_attr(feature = "serde", serde(rename = "CmonId"))]
pub cmon_id: Max35Text,
#[yaserde(rename = "CorpActnEvtId")]
#[cfg_attr(feature = "serde", serde(rename = "CorpActnEvtId"))]
pub corp_actn_evt_id: Max35Text,
#[yaserde(rename = "TrptyAgtSvcPrvdrCollTxId")]
#[cfg_attr(feature = "serde", serde(rename = "TrptyAgtSvcPrvdrCollTxId"))]
pub trpty_agt_svc_prvdr_coll_tx_id: Max35Text,
#[yaserde(rename = "ClntTrptyCollTxId")]
#[cfg_attr(feature = "serde", serde(rename = "ClntTrptyCollTxId"))]
pub clnt_trpty_coll_tx_id: Max35Text,
#[yaserde(rename = "ClntCollInstrId")]
#[cfg_attr(feature = "serde", serde(rename = "ClntCollInstrId"))]
pub clnt_coll_instr_id: Max35Text,
#[yaserde(rename = "TrptyAgtSvcPrvdrCollInstrId")]
#[cfg_attr(feature = "serde", serde(rename = "TrptyAgtSvcPrvdrCollInstrId"))]
pub trpty_agt_svc_prvdr_coll_instr_id: Max35Text,
#[yaserde(rename = "MstrRef")]
#[cfg_attr(feature = "serde", serde(rename = "MstrRef"))]
pub mstr_ref: Max35Text,
#[yaserde(rename = "ClntRef")]
#[cfg_attr(feature = "serde", serde(rename = "ClntRef"))]
pub clnt_ref: AdditionalReference10,
#[yaserde(rename = "AcctOwnrLegId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctOwnrLegId"))]
pub acct_ownr_leg_id: Max35Text,
#[yaserde(rename = "AcctSvcrLegId")]
#[cfg_attr(feature = "serde", serde(rename = "AcctSvcrLegId"))]
pub acct_svcr_leg_id: Max35Text,
#[yaserde(rename = "TxDtls")]
#[cfg_attr(feature = "serde", serde(rename = "TxDtls"))]
pub tx_dtls: TransactionDetails184,
#[yaserde(rename = "SplmtryData")]
#[cfg_attr(feature = "serde", serde(rename = "SplmtryData"))]
pub splmtry_data: Vec<SupplementaryData1>,
}
impl Validate for Transaction167 {}
#[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:semt.017.001.14")]
pub enum TransactionActivity1Code {
#[yaserde(rename = "BOLE")]
#[cfg_attr(feature = "serde", serde(rename = "BOLE"))]
Bole,
#[yaserde(rename = "CLAI")]
#[cfg_attr(feature = "serde", serde(rename = "CLAI"))]
Clai,
#[yaserde(rename = "COLL")]
#[cfg_attr(feature = "serde", serde(rename = "COLL"))]
Coll,
#[yaserde(rename = "CORP")]
#[cfg_attr(feature = "serde", serde(rename = "CORP"))]
Corp,
#[yaserde(rename = "SETT")]
#[cfg_attr(feature = "serde", serde(rename = "SETT"))]
Sett,
__Unknown__(String),
}
impl Default for TransactionActivity1Code {
fn default() -> TransactionActivity1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TransactionActivity1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct TransactionActivity3Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<TransactionActivity1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for TransactionActivity3Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct TransactionDetails184 {
#[yaserde(rename = "TxActvty")]
#[cfg_attr(feature = "serde", serde(rename = "TxActvty"))]
pub tx_actvty: TransactionActivity3Choice,
#[yaserde(rename = "SttlmTxOrCorpActnEvtTp")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmTxOrCorpActnEvtTp"))]
pub sttlm_tx_or_corp_actn_evt_tp: SettlementOrCorporateActionEvent35Choice,
#[yaserde(rename = "SctiesMvmntTp")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesMvmntTp"))]
pub scties_mvmnt_tp: ReceiveDelivery1Code,
#[yaserde(rename = "Pmt")]
#[cfg_attr(feature = "serde", serde(rename = "Pmt"))]
pub pmt: DeliveryReceiptType2Code,
#[yaserde(rename = "SttlmParams")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmParams"))]
pub sttlm_params: SettlementDetails231,
#[yaserde(rename = "PlcOfTrad")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfTrad"))]
pub plc_of_trad: PlaceOfTradeIdentification1,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafeKeepingPlace5,
#[yaserde(rename = "PlcOfClr")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfClr"))]
pub plc_of_clr: PlaceOfClearingIdentification2,
#[yaserde(rename = "PstngQty")]
#[cfg_attr(feature = "serde", serde(rename = "PstngQty"))]
pub pstng_qty: Quantity51Choice,
#[yaserde(rename = "NbOfDaysAcrd")]
#[cfg_attr(feature = "serde", serde(rename = "NbOfDaysAcrd"))]
pub nb_of_days_acrd: Max3Number,
#[yaserde(rename = "PstngAmt")]
#[cfg_attr(feature = "serde", serde(rename = "PstngAmt"))]
pub pstng_amt: AmountAndDirection3,
#[yaserde(rename = "DgtlPmtPstngSttlm")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlPmtPstngSttlm"))]
pub dgtl_pmt_pstng_sttlm: DigitalPaymentSettlement2,
#[yaserde(rename = "AcrdIntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AcrdIntrstAmt"))]
pub acrd_intrst_amt: AmountAndDirection21,
#[yaserde(rename = "TradDt")]
#[cfg_attr(feature = "serde", serde(rename = "TradDt"))]
pub trad_dt: TradeDate8Choice,
#[yaserde(rename = "FctvSttlmDt")]
#[cfg_attr(feature = "serde", serde(rename = "FctvSttlmDt"))]
pub fctv_sttlm_dt: DateAndDateTime2Choice,
#[yaserde(rename = "SttlmDt")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmDt"))]
pub sttlm_dt: SettlementDate17Choice,
#[yaserde(rename = "ValDt")]
#[cfg_attr(feature = "serde", serde(rename = "ValDt"))]
pub val_dt: DateAndDateTime2Choice,
#[yaserde(rename = "AckdStsTmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "AckdStsTmStmp"))]
pub ackd_sts_tm_stmp: IsodateTime,
#[yaserde(rename = "MtchdStsTmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "MtchdStsTmStmp"))]
pub mtchd_sts_tm_stmp: IsodateTime,
#[yaserde(rename = "DlvrgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "DlvrgSttlmPties"))]
pub dlvrg_sttlm_pties: SettlementParties125,
#[yaserde(rename = "RcvgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "RcvgSttlmPties"))]
pub rcvg_sttlm_pties: SettlementParties125,
#[yaserde(rename = "RvslInd")]
#[cfg_attr(feature = "serde", serde(rename = "RvslInd"))]
pub rvsl_ind: YesNoIndicator,
#[yaserde(rename = "TxAddtlDtls")]
#[cfg_attr(feature = "serde", serde(rename = "TxAddtlDtls"))]
pub tx_addtl_dtls: Max350Text,
}
impl Validate for TransactionDetails184 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct TransactionDetails186 {
#[yaserde(rename = "TxActvty")]
#[cfg_attr(feature = "serde", serde(rename = "TxActvty"))]
pub tx_actvty: TransactionActivity3Choice,
#[yaserde(rename = "SttlmTxOrCorpActnEvtTp")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmTxOrCorpActnEvtTp"))]
pub sttlm_tx_or_corp_actn_evt_tp: SettlementOrCorporateActionEvent35Choice,
#[yaserde(rename = "SctiesMvmntTp")]
#[cfg_attr(feature = "serde", serde(rename = "SctiesMvmntTp"))]
pub scties_mvmnt_tp: ReceiveDelivery1Code,
#[yaserde(rename = "Pmt")]
#[cfg_attr(feature = "serde", serde(rename = "Pmt"))]
pub pmt: DeliveryReceiptType2Code,
#[yaserde(rename = "SttlmParams")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmParams"))]
pub sttlm_params: SettlementDetails231,
#[yaserde(rename = "PlcOfTrad")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfTrad"))]
pub plc_of_trad: PlaceOfTradeIdentification1,
#[yaserde(rename = "SfkpgPlc")]
#[cfg_attr(feature = "serde", serde(rename = "SfkpgPlc"))]
pub sfkpg_plc: SafeKeepingPlace5,
#[yaserde(rename = "PlcOfClr")]
#[cfg_attr(feature = "serde", serde(rename = "PlcOfClr"))]
pub plc_of_clr: PlaceOfClearingIdentification2,
#[yaserde(rename = "PstngQty")]
#[cfg_attr(feature = "serde", serde(rename = "PstngQty"))]
pub pstng_qty: Quantity51Choice,
#[yaserde(rename = "NbOfDaysAcrd")]
#[cfg_attr(feature = "serde", serde(rename = "NbOfDaysAcrd"))]
pub nb_of_days_acrd: Max3Number,
#[yaserde(rename = "PstngAmt")]
#[cfg_attr(feature = "serde", serde(rename = "PstngAmt"))]
pub pstng_amt: AmountAndDirection3,
#[yaserde(rename = "DgtlPmtSttlm")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlPmtSttlm"))]
pub dgtl_pmt_sttlm: DigitalPaymentSettlement2,
#[yaserde(rename = "AcrdIntrstAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AcrdIntrstAmt"))]
pub acrd_intrst_amt: AmountAndDirection21,
#[yaserde(rename = "TradDt")]
#[cfg_attr(feature = "serde", serde(rename = "TradDt"))]
pub trad_dt: TradeDate8Choice,
#[yaserde(rename = "FctvSttlmDt")]
#[cfg_attr(feature = "serde", serde(rename = "FctvSttlmDt"))]
pub fctv_sttlm_dt: DateAndDateTime2Choice,
#[yaserde(rename = "SttlmDt")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmDt"))]
pub sttlm_dt: SettlementDate17Choice,
#[yaserde(rename = "ValDt")]
#[cfg_attr(feature = "serde", serde(rename = "ValDt"))]
pub val_dt: DateAndDateTime2Choice,
#[yaserde(rename = "AckdStsTmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "AckdStsTmStmp"))]
pub ackd_sts_tm_stmp: IsodateTime,
#[yaserde(rename = "MtchdStsTmStmp")]
#[cfg_attr(feature = "serde", serde(rename = "MtchdStsTmStmp"))]
pub mtchd_sts_tm_stmp: IsodateTime,
#[yaserde(rename = "DlvrgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "DlvrgSttlmPties"))]
pub dlvrg_sttlm_pties: SettlementParties125,
#[yaserde(rename = "RcvgSttlmPties")]
#[cfg_attr(feature = "serde", serde(rename = "RcvgSttlmPties"))]
pub rcvg_sttlm_pties: SettlementParties125,
#[yaserde(rename = "RvslInd")]
#[cfg_attr(feature = "serde", serde(rename = "RvslInd"))]
pub rvsl_ind: YesNoIndicator,
#[yaserde(rename = "TxAddtlDtls")]
#[cfg_attr(feature = "serde", serde(rename = "TxAddtlDtls"))]
pub tx_addtl_dtls: Max350Text,
}
impl Validate for TransactionDetails186 {}
#[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:semt.017.001.14")]
pub enum TypeOfPrice17Code {
#[yaserde(rename = "BIDE")]
#[cfg_attr(feature = "serde", serde(rename = "BIDE"))]
Bide,
#[yaserde(rename = "OFFR")]
#[cfg_attr(feature = "serde", serde(rename = "OFFR"))]
Offr,
#[yaserde(rename = "NAVL")]
#[cfg_attr(feature = "serde", serde(rename = "NAVL"))]
Navl,
#[yaserde(rename = "CREA")]
#[cfg_attr(feature = "serde", serde(rename = "CREA"))]
Crea,
#[yaserde(rename = "CANC")]
#[cfg_attr(feature = "serde", serde(rename = "CANC"))]
Canc,
#[yaserde(rename = "INTE")]
#[cfg_attr(feature = "serde", serde(rename = "INTE"))]
Inte,
#[yaserde(rename = "SWNG")]
#[cfg_attr(feature = "serde", serde(rename = "SWNG"))]
Swng,
#[yaserde(rename = "MIDD")]
#[cfg_attr(feature = "serde", serde(rename = "MIDD"))]
Midd,
#[yaserde(rename = "RINV")]
#[cfg_attr(feature = "serde", serde(rename = "RINV"))]
Rinv,
#[yaserde(rename = "SWIC")]
#[cfg_attr(feature = "serde", serde(rename = "SWIC"))]
Swic,
#[yaserde(rename = "MRKT")]
#[cfg_attr(feature = "serde", serde(rename = "MRKT"))]
Mrkt,
#[yaserde(rename = "INDC")]
#[cfg_attr(feature = "serde", serde(rename = "INDC"))]
Indc,
#[yaserde(rename = "DDVR")]
#[cfg_attr(feature = "serde", serde(rename = "DDVR"))]
Ddvr,
#[yaserde(rename = "ACTU")]
#[cfg_attr(feature = "serde", serde(rename = "ACTU"))]
Actu,
__Unknown__(String),
}
impl Default for TypeOfPrice17Code {
fn default() -> TypeOfPrice17Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TypeOfPrice17Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct TypeOfPrice48Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<TypeOfPrice17Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for TypeOfPrice48Choice {}
#[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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct UpdateType15Choice {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Option<StatementUpdateType1Code>,
#[yaserde(rename = "Prtry")]
#[cfg_attr(feature = "serde", serde(rename = "Prtry"))]
pub prtry: Option<GenericIdentification30>,
}
impl Validate for UpdateType15Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct YesNoIndicator (pub bool);
crate::simple_type!(YesNoIndicator);
impl Validate for YesNoIndicator {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:semt.017.001.14")]
pub struct YieldedOrValueType1Choice {
#[yaserde(rename = "Yldd")]
#[cfg_attr(feature = "serde", serde(rename = "Yldd"))]
pub yldd: Option<YesNoIndicator>,
#[yaserde(rename = "ValTp")]
#[cfg_attr(feature = "serde", serde(rename = "ValTp"))]
pub val_tp: Option<PriceValueType1Code>,
}
impl Validate for YieldedOrValueType1Choice {}
impl crate::MxMessage for Document {
const BUSINESS_AREA: crate::BusinessArea = crate::BusinessArea::semt;
const FUNCTIONALITY: &'static str = "017";
const VARIANT: &'static str = "001";
const VERSION: &'static str = "14";
const MESSAGE_NAME: &'static str = "semt.017.001.14";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:semt.017.001.14";
}