#![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:caam.009.001.03")]
pub struct Atmcassette3 {
#[yaserde(rename = "PhysId")]
#[cfg_attr(feature = "serde", serde(rename = "PhysId"))]
pub phys_id: Max35Text,
#[yaserde(rename = "LogclId")]
#[cfg_attr(feature = "serde", serde(rename = "LogclId"))]
pub logcl_id: Max35Text,
#[yaserde(rename = "SrlNb")]
#[cfg_attr(feature = "serde", serde(rename = "SrlNb"))]
pub srl_nb: Max35Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: AtmcassetteType1Code,
#[yaserde(rename = "SubTp")]
#[cfg_attr(feature = "serde", serde(rename = "SubTp"))]
pub sub_tp: Vec<AtmnoteType1Code>,
#[yaserde(rename = "MdiaTp")]
#[cfg_attr(feature = "serde", serde(rename = "MdiaTp"))]
pub mdia_tp: AtmmediaType4Code,
#[yaserde(rename = "MdiaCntrs")]
#[cfg_attr(feature = "serde", serde(rename = "MdiaCntrs"))]
pub mdia_cntrs: Vec<AtmcassetteCounters6>,
#[yaserde(rename = "CssttSts")]
#[cfg_attr(feature = "serde", serde(rename = "CssttSts"))]
pub csstt_sts: AtmcassetteStatus1Code,
}
impl Validate for Atmcassette3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmcassetteCounters5 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: AtmcounterType3Code,
#[yaserde(rename = "AddedNb")]
#[cfg_attr(feature = "serde", serde(rename = "AddedNb"))]
pub added_nb: Number,
#[yaserde(rename = "RmvdNb")]
#[cfg_attr(feature = "serde", serde(rename = "RmvdNb"))]
pub rmvd_nb: Number,
#[yaserde(rename = "RmvdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RmvdAmt"))]
pub rmvd_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "DspnsdNb")]
#[cfg_attr(feature = "serde", serde(rename = "DspnsdNb"))]
pub dspnsd_nb: Number,
#[yaserde(rename = "DpstdNb")]
#[cfg_attr(feature = "serde", serde(rename = "DpstdNb"))]
pub dpstd_nb: Number,
#[yaserde(rename = "DpstdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DpstdAmt"))]
pub dpstd_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "RcycldNb")]
#[cfg_attr(feature = "serde", serde(rename = "RcycldNb"))]
pub rcycld_nb: Number,
#[yaserde(rename = "RtrctdNb")]
#[cfg_attr(feature = "serde", serde(rename = "RtrctdNb"))]
pub rtrctd_nb: Number,
#[yaserde(rename = "RtrctdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RtrctdAmt"))]
pub rtrctd_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "RjctdNb")]
#[cfg_attr(feature = "serde", serde(rename = "RjctdNb"))]
pub rjctd_nb: Number,
#[yaserde(rename = "PresntdNb")]
#[cfg_attr(feature = "serde", serde(rename = "PresntdNb"))]
pub presntd_nb: Number,
#[yaserde(rename = "InitlNb")]
#[cfg_attr(feature = "serde", serde(rename = "InitlNb"))]
pub initl_nb: Number,
#[yaserde(rename = "InitlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "InitlAmt"))]
pub initl_amt: ImpliedCurrencyAndAmount,
}
impl Validate for AtmcassetteCounters5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmcassetteCounters6 {
#[yaserde(rename = "UnitVal")]
#[cfg_attr(feature = "serde", serde(rename = "UnitVal"))]
pub unit_val: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
#[yaserde(rename = "MdiaCtgy")]
#[cfg_attr(feature = "serde", serde(rename = "MdiaCtgy"))]
pub mdia_ctgy: AtmmediaType3Code,
#[yaserde(rename = "InitlCnt")]
#[cfg_attr(feature = "serde", serde(rename = "InitlCnt"))]
pub initl_cnt: Number,
#[yaserde(rename = "CurNb")]
#[cfg_attr(feature = "serde", serde(rename = "CurNb"))]
pub cur_nb: Number,
#[yaserde(rename = "CurAmt")]
#[cfg_attr(feature = "serde", serde(rename = "CurAmt"))]
pub cur_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "FlowTtls")]
#[cfg_attr(feature = "serde", serde(rename = "FlowTtls"))]
pub flow_ttls: Vec<AtmcassetteCounters5>,
}
impl Validate for AtmcassetteCounters6 {}
#[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:caam.009.001.03")]
pub enum AtmcassetteStatus1Code {
#[yaserde(rename = "CUOK")]
#[cfg_attr(feature = "serde", serde(rename = "CUOK"))]
Cuok,
#[yaserde(rename = "CUFL")]
#[cfg_attr(feature = "serde", serde(rename = "CUFL"))]
Cufl,
#[yaserde(rename = "CUHG")]
#[cfg_attr(feature = "serde", serde(rename = "CUHG"))]
Cuhg,
#[yaserde(rename = "CULW")]
#[cfg_attr(feature = "serde", serde(rename = "CULW"))]
Culw,
#[yaserde(rename = "CUMT")]
#[cfg_attr(feature = "serde", serde(rename = "CUMT"))]
Cumt,
#[yaserde(rename = "CUNP")]
#[cfg_attr(feature = "serde", serde(rename = "CUNP"))]
Cunp,
#[yaserde(rename = "CUMS")]
#[cfg_attr(feature = "serde", serde(rename = "CUMS"))]
Cums,
#[yaserde(rename = "CUNA")]
#[cfg_attr(feature = "serde", serde(rename = "CUNA"))]
Cuna,
#[yaserde(rename = "CUNR")]
#[cfg_attr(feature = "serde", serde(rename = "CUNR"))]
Cunr,
#[yaserde(rename = "CUMP")]
#[cfg_attr(feature = "serde", serde(rename = "CUMP"))]
Cump,
__Unknown__(String),
}
impl Default for AtmcassetteStatus1Code {
fn default() -> AtmcassetteStatus1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmcassetteStatus1Code {}
#[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:caam.009.001.03")]
pub enum AtmcassetteType1Code {
#[yaserde(rename = "DPST")]
#[cfg_attr(feature = "serde", serde(rename = "DPST"))]
Dpst,
#[yaserde(rename = "DISP")]
#[cfg_attr(feature = "serde", serde(rename = "DISP"))]
Disp,
#[yaserde(rename = "RCYC")]
#[cfg_attr(feature = "serde", serde(rename = "RCYC"))]
Rcyc,
#[yaserde(rename = "RJCT")]
#[cfg_attr(feature = "serde", serde(rename = "RJCT"))]
Rjct,
#[yaserde(rename = "RPLT")]
#[cfg_attr(feature = "serde", serde(rename = "RPLT"))]
Rplt,
#[yaserde(rename = "RTRC")]
#[cfg_attr(feature = "serde", serde(rename = "RTRC"))]
Rtrc,
__Unknown__(String),
}
impl Default for AtmcassetteType1Code {
fn default() -> AtmcassetteType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmcassetteType1Code {}
#[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:caam.009.001.03")]
pub enum Atmcommand5Code {
#[yaserde(rename = "ABAL")]
#[cfg_attr(feature = "serde", serde(rename = "ABAL"))]
Abal,
#[yaserde(rename = "CCNT")]
#[cfg_attr(feature = "serde", serde(rename = "CCNT"))]
Ccnt,
#[yaserde(rename = "RPTC")]
#[cfg_attr(feature = "serde", serde(rename = "RPTC"))]
Rptc,
__Unknown__(String),
}
impl Default for Atmcommand5Code {
fn default() -> Atmcommand5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Atmcommand5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Atmcommand8 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Atmcommand5Code,
#[yaserde(rename = "ReqrdDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "ReqrdDtTm"))]
pub reqrd_dt_tm: IsodateTime,
#[yaserde(rename = "PrcdDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "PrcdDtTm"))]
pub prcd_dt_tm: IsodateTime,
#[yaserde(rename = "CmdId")]
#[cfg_attr(feature = "serde", serde(rename = "CmdId"))]
pub cmd_id: AtmcommandIdentification1,
#[yaserde(rename = "Rslt")]
#[cfg_attr(feature = "serde", serde(rename = "Rslt"))]
pub rslt: TerminalManagementActionResult2Code,
#[yaserde(rename = "AddtlErrInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlErrInf"))]
pub addtl_err_inf: Max140Text,
}
impl Validate for Atmcommand8 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Atmcommand9 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Atmcommand5Code,
#[yaserde(rename = "CmdId")]
#[cfg_attr(feature = "serde", serde(rename = "CmdId"))]
pub cmd_id: AtmcommandIdentification1,
}
impl Validate for Atmcommand9 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmcommandIdentification1 {
#[yaserde(rename = "Orgn")]
#[cfg_attr(feature = "serde", serde(rename = "Orgn"))]
pub orgn: Max35Text,
#[yaserde(rename = "Ref")]
#[cfg_attr(feature = "serde", serde(rename = "Ref"))]
pub _ref: Max35Text,
#[yaserde(rename = "Prcr")]
#[cfg_attr(feature = "serde", serde(rename = "Prcr"))]
pub prcr: Max140Text,
}
impl Validate for AtmcommandIdentification1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmconfigurationParameter1 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: DataSetCategory7Code,
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Max35Text,
}
impl Validate for AtmconfigurationParameter1 {}
#[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:caam.009.001.03")]
pub enum AtmcounterType2Code {
#[yaserde(rename = "BDAY")]
#[cfg_attr(feature = "serde", serde(rename = "BDAY"))]
Bday,
#[yaserde(rename = "INQU")]
#[cfg_attr(feature = "serde", serde(rename = "INQU"))]
Inqu,
#[yaserde(rename = "CTOF")]
#[cfg_attr(feature = "serde", serde(rename = "CTOF"))]
Ctof,
#[yaserde(rename = "OPER")]
#[cfg_attr(feature = "serde", serde(rename = "OPER"))]
Oper,
__Unknown__(String),
}
impl Default for AtmcounterType2Code {
fn default() -> AtmcounterType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmcounterType2Code {}
#[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:caam.009.001.03")]
pub enum AtmcounterType3Code {
#[yaserde(rename = "INQU")]
#[cfg_attr(feature = "serde", serde(rename = "INQU"))]
Inqu,
#[yaserde(rename = "CTXN")]
#[cfg_attr(feature = "serde", serde(rename = "CTXN"))]
Ctxn,
#[yaserde(rename = "CTOF")]
#[cfg_attr(feature = "serde", serde(rename = "CTOF"))]
Ctof,
#[yaserde(rename = "BDAY")]
#[cfg_attr(feature = "serde", serde(rename = "BDAY"))]
Bday,
#[yaserde(rename = "PRTN")]
#[cfg_attr(feature = "serde", serde(rename = "PRTN"))]
Prtn,
#[yaserde(rename = "OPER")]
#[cfg_attr(feature = "serde", serde(rename = "OPER"))]
Oper,
#[yaserde(rename = "SLRP")]
#[cfg_attr(feature = "serde", serde(rename = "SLRP"))]
Slrp,
__Unknown__(String),
}
impl Default for AtmcounterType3Code {
fn default() -> AtmcounterType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmcounterType3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Atmenvironment22 {
#[yaserde(rename = "Acqrr")]
#[cfg_attr(feature = "serde", serde(rename = "Acqrr"))]
pub acqrr: Acquirer7,
#[yaserde(rename = "ATMMgrId")]
#[cfg_attr(feature = "serde", serde(rename = "ATMMgrId"))]
pub atm_mgr_id: Max35Text,
#[yaserde(rename = "HstgNtty")]
#[cfg_attr(feature = "serde", serde(rename = "HstgNtty"))]
pub hstg_ntty: TerminalHosting1,
#[yaserde(rename = "ATM")]
#[cfg_attr(feature = "serde", serde(rename = "ATM"))]
pub atm: AutomatedTellerMachine8,
#[yaserde(rename = "Card")]
#[cfg_attr(feature = "serde", serde(rename = "Card"))]
pub card: PaymentCard37,
}
impl Validate for Atmenvironment22 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Atmequipment1 {
#[yaserde(rename = "Manfctr")]
#[cfg_attr(feature = "serde", serde(rename = "Manfctr"))]
pub manfctr: Max35Text,
#[yaserde(rename = "Mdl")]
#[cfg_attr(feature = "serde", serde(rename = "Mdl"))]
pub mdl: Max35Text,
#[yaserde(rename = "SrlNb")]
#[cfg_attr(feature = "serde", serde(rename = "SrlNb"))]
pub srl_nb: Max35Text,
#[yaserde(rename = "ApplPrvdr")]
#[cfg_attr(feature = "serde", serde(rename = "ApplPrvdr"))]
pub appl_prvdr: Max35Text,
#[yaserde(rename = "ApplNm")]
#[cfg_attr(feature = "serde", serde(rename = "ApplNm"))]
pub appl_nm: Max35Text,
#[yaserde(rename = "ApplVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "ApplVrsn"))]
pub appl_vrsn: Max35Text,
#[yaserde(rename = "ApprvlNb")]
#[cfg_attr(feature = "serde", serde(rename = "ApprvlNb"))]
pub apprvl_nb: Max35Text,
#[yaserde(rename = "CfgtnParam")]
#[cfg_attr(feature = "serde", serde(rename = "CfgtnParam"))]
pub cfgtn_param: Vec<AtmconfigurationParameter1>,
}
impl Validate for Atmequipment1 {}
#[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:caam.009.001.03")]
pub enum AtmmediaType3Code {
#[yaserde(rename = "CNTR")]
#[cfg_attr(feature = "serde", serde(rename = "CNTR"))]
Cntr,
#[yaserde(rename = "FITN")]
#[cfg_attr(feature = "serde", serde(rename = "FITN"))]
Fitn,
#[yaserde(rename = "FITU")]
#[cfg_attr(feature = "serde", serde(rename = "FITU"))]
Fitu,
#[yaserde(rename = "SPCT")]
#[cfg_attr(feature = "serde", serde(rename = "SPCT"))]
Spct,
#[yaserde(rename = "UNFT")]
#[cfg_attr(feature = "serde", serde(rename = "UNFT"))]
Unft,
#[yaserde(rename = "UNRG")]
#[cfg_attr(feature = "serde", serde(rename = "UNRG"))]
Unrg,
__Unknown__(String),
}
impl Default for AtmmediaType3Code {
fn default() -> AtmmediaType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmmediaType3Code {}
#[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:caam.009.001.03")]
pub enum AtmmediaType4Code {
#[yaserde(rename = "CARD")]
#[cfg_attr(feature = "serde", serde(rename = "CARD"))]
Card,
#[yaserde(rename = "COIN")]
#[cfg_attr(feature = "serde", serde(rename = "COIN"))]
Coin,
#[yaserde(rename = "CMDT")]
#[cfg_attr(feature = "serde", serde(rename = "CMDT"))]
Cmdt,
#[yaserde(rename = "CPNS")]
#[cfg_attr(feature = "serde", serde(rename = "CPNS"))]
Cpns,
#[yaserde(rename = "NOTE")]
#[cfg_attr(feature = "serde", serde(rename = "NOTE"))]
Note,
#[yaserde(rename = "STMP")]
#[cfg_attr(feature = "serde", serde(rename = "STMP"))]
Stmp,
#[yaserde(rename = "UDTM")]
#[cfg_attr(feature = "serde", serde(rename = "UDTM"))]
Udtm,
#[yaserde(rename = "CHCK")]
#[cfg_attr(feature = "serde", serde(rename = "CHCK"))]
Chck,
#[yaserde(rename = "ENVP")]
#[cfg_attr(feature = "serde", serde(rename = "ENVP"))]
Envp,
#[yaserde(rename = "MLTP")]
#[cfg_attr(feature = "serde", serde(rename = "MLTP"))]
Mltp,
__Unknown__(String),
}
impl Default for AtmmediaType4Code {
fn default() -> AtmmediaType4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmmediaType4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmmessageFunction2 {
#[yaserde(rename = "Fctn")]
#[cfg_attr(feature = "serde", serde(rename = "Fctn"))]
pub fctn: MessageFunction11Code,
#[yaserde(rename = "ATMSvcCd")]
#[cfg_attr(feature = "serde", serde(rename = "ATMSvcCd"))]
pub atm_svc_cd: Max35Text,
#[yaserde(rename = "HstSvcCd")]
#[cfg_attr(feature = "serde", serde(rename = "HstSvcCd"))]
pub hst_svc_cd: Max35Text,
}
impl Validate for AtmmessageFunction2 {}
#[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:caam.009.001.03")]
pub enum AtmnoteType1Code {
#[yaserde(rename = "ALLT")]
#[cfg_attr(feature = "serde", serde(rename = "ALLT"))]
Allt,
#[yaserde(rename = "CNTR")]
#[cfg_attr(feature = "serde", serde(rename = "CNTR"))]
Cntr,
#[yaserde(rename = "IDVD")]
#[cfg_attr(feature = "serde", serde(rename = "IDVD"))]
Idvd,
#[yaserde(rename = "SCNT")]
#[cfg_attr(feature = "serde", serde(rename = "SCNT"))]
Scnt,
#[yaserde(rename = "UNFT")]
#[cfg_attr(feature = "serde", serde(rename = "UNFT"))]
Unft,
__Unknown__(String),
}
impl Default for AtmnoteType1Code {
fn default() -> AtmnoteType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmnoteType1Code {}
#[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:caam.009.001.03")]
pub enum Atmoperation2Code {
#[yaserde(rename = "ADJU")]
#[cfg_attr(feature = "serde", serde(rename = "ADJU"))]
Adju,
#[yaserde(rename = "INSR")]
#[cfg_attr(feature = "serde", serde(rename = "INSR"))]
Insr,
#[yaserde(rename = "LOAD")]
#[cfg_attr(feature = "serde", serde(rename = "LOAD"))]
Load,
#[yaserde(rename = "REMV")]
#[cfg_attr(feature = "serde", serde(rename = "REMV"))]
Remv,
#[yaserde(rename = "UNLD")]
#[cfg_attr(feature = "serde", serde(rename = "UNLD"))]
Unld,
#[yaserde(rename = "RCUP")]
#[cfg_attr(feature = "serde", serde(rename = "RCUP"))]
Rcup,
#[yaserde(rename = "SWAP")]
#[cfg_attr(feature = "serde", serde(rename = "SWAP"))]
Swap,
__Unknown__(String),
}
impl Default for Atmoperation2Code {
fn default() -> Atmoperation2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Atmoperation2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmreconciliationAdvice3 {
#[yaserde(rename = "Envt")]
#[cfg_attr(feature = "serde", serde(rename = "Envt"))]
pub envt: Atmenvironment22,
#[yaserde(rename = "CmdRslt")]
#[cfg_attr(feature = "serde", serde(rename = "CmdRslt"))]
pub cmd_rslt: Vec<Atmcommand8>,
#[yaserde(rename = "CmdCntxt")]
#[cfg_attr(feature = "serde", serde(rename = "CmdCntxt"))]
pub cmd_cntxt: Atmcommand9,
#[yaserde(rename = "Tx")]
#[cfg_attr(feature = "serde", serde(rename = "Tx"))]
pub tx: Atmtransaction36,
}
impl Validate for AtmreconciliationAdvice3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmreconciliationAdviceV03 {
#[yaserde(rename = "Hdr")]
#[cfg_attr(feature = "serde", serde(rename = "Hdr"))]
pub hdr: Header32,
#[yaserde(rename = "PrtctdATMRcncltnAdvc")]
#[cfg_attr(feature = "serde", serde(rename = "PrtctdATMRcncltnAdvc"))]
pub prtctd_atm_rcncltn_advc: ContentInformationType10,
#[yaserde(rename = "ATMRcncltnAdvc")]
#[cfg_attr(feature = "serde", serde(rename = "ATMRcncltnAdvc"))]
pub atm_rcncltn_advc: AtmreconciliationAdvice3,
#[yaserde(rename = "SctyTrlr")]
#[cfg_attr(feature = "serde", serde(rename = "SctyTrlr"))]
pub scty_trlr: ContentInformationType15,
}
impl Validate for AtmreconciliationAdviceV03 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AtmreconciliationOperation1 {
#[yaserde(rename = "TpOfOpr")]
#[cfg_attr(feature = "serde", serde(rename = "TpOfOpr"))]
pub tp_of_opr: Atmoperation2Code,
#[yaserde(rename = "TxId")]
#[cfg_attr(feature = "serde", serde(rename = "TxId"))]
pub tx_id: TransactionIdentifier3,
#[yaserde(rename = "RcncltnId")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnId"))]
pub rcncltn_id: Max35Text,
#[yaserde(rename = "ATMTtls")]
#[cfg_attr(feature = "serde", serde(rename = "ATMTtls"))]
pub atm_ttls: Vec<Atmtotals4>,
#[yaserde(rename = "Csstt")]
#[cfg_attr(feature = "serde", serde(rename = "Csstt"))]
pub csstt: Vec<Atmcassette3>,
#[yaserde(rename = "TxTtls")]
#[cfg_attr(feature = "serde", serde(rename = "TxTtls"))]
pub tx_ttls: Vec<Atmtotals3>,
#[yaserde(rename = "RtndCard")]
#[cfg_attr(feature = "serde", serde(rename = "RtndCard"))]
pub rtnd_card: Number,
#[yaserde(rename = "AddtlTxInf")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTxInf"))]
pub addtl_tx_inf: Max140Text,
#[yaserde(rename = "Incdnt")]
#[cfg_attr(feature = "serde", serde(rename = "Incdnt"))]
pub incdnt: Vec<FailureReason9Code>,
}
impl Validate for AtmreconciliationOperation1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Atmtotals3 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max70Text,
#[yaserde(rename = "AddtlId")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlId"))]
pub addtl_id: Max70Text,
#[yaserde(rename = "Prd")]
#[cfg_attr(feature = "serde", serde(rename = "Prd"))]
pub prd: AtmcounterType2Code,
#[yaserde(rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
#[yaserde(rename = "Cnt")]
#[cfg_attr(feature = "serde", serde(rename = "Cnt"))]
pub cnt: Number,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
}
impl Validate for Atmtotals3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Atmtotals4 {
#[yaserde(rename = "MdiaTp")]
#[cfg_attr(feature = "serde", serde(rename = "MdiaTp"))]
pub mdia_tp: AtmmediaType4Code,
#[yaserde(rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: ActiveCurrencyCode,
#[yaserde(rename = "ATMBal")]
#[cfg_attr(feature = "serde", serde(rename = "ATMBal"))]
pub atm_bal: ImpliedCurrencyAndAmount,
#[yaserde(rename = "ATMCur")]
#[cfg_attr(feature = "serde", serde(rename = "ATMCur"))]
pub atm_cur: ImpliedCurrencyAndAmount,
#[yaserde(rename = "ATMBalNb")]
#[cfg_attr(feature = "serde", serde(rename = "ATMBalNb"))]
pub atm_bal_nb: Number,
#[yaserde(rename = "ATMCurNb")]
#[cfg_attr(feature = "serde", serde(rename = "ATMCurNb"))]
pub atm_cur_nb: Number,
}
impl Validate for Atmtotals4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Atmtransaction36 {
#[yaserde(rename = "RcncltnOpr")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnOpr"))]
pub rcncltn_opr: Vec<AtmreconciliationOperation1>,
}
impl Validate for Atmtransaction36 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Acquirer7 {
#[yaserde(rename = "AcqrgInstn")]
#[cfg_attr(feature = "serde", serde(rename = "AcqrgInstn"))]
pub acqrg_instn: Max35Text,
#[yaserde(rename = "Brnch")]
#[cfg_attr(feature = "serde", serde(rename = "Brnch"))]
pub brnch: Max35Text,
}
impl Validate for Acquirer7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ActiveCurrencyCode (pub String);
crate::simple_type!(ActiveCurrencyCode);
impl Validate for ActiveCurrencyCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub enum Algorithm11Code {
#[yaserde(rename = "HS25")]
#[cfg_attr(feature = "serde", serde(rename = "HS25"))]
Hs25,
#[yaserde(rename = "HS38")]
#[cfg_attr(feature = "serde", serde(rename = "HS38"))]
Hs38,
#[yaserde(rename = "HS51")]
#[cfg_attr(feature = "serde", serde(rename = "HS51"))]
Hs51,
#[yaserde(rename = "HS01")]
#[cfg_attr(feature = "serde", serde(rename = "HS01"))]
Hs01,
__Unknown__(String),
}
impl Default for Algorithm11Code {
fn default() -> Algorithm11Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Algorithm11Code {}
#[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:caam.009.001.03")]
pub enum Algorithm12Code {
#[yaserde(rename = "MACC")]
#[cfg_attr(feature = "serde", serde(rename = "MACC"))]
Macc,
#[yaserde(rename = "MCCS")]
#[cfg_attr(feature = "serde", serde(rename = "MCCS"))]
Mccs,
#[yaserde(rename = "CMA1")]
#[cfg_attr(feature = "serde", serde(rename = "CMA1"))]
Cma1,
#[yaserde(rename = "MCC1")]
#[cfg_attr(feature = "serde", serde(rename = "MCC1"))]
Mcc1,
#[yaserde(rename = "CMA9")]
#[cfg_attr(feature = "serde", serde(rename = "CMA9"))]
Cma9,
#[yaserde(rename = "CMA5")]
#[cfg_attr(feature = "serde", serde(rename = "CMA5"))]
Cma5,
__Unknown__(String),
}
impl Default for Algorithm12Code {
fn default() -> Algorithm12Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Algorithm12Code {}
#[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:caam.009.001.03")]
pub enum Algorithm13Code {
#[yaserde(rename = "EA2C")]
#[cfg_attr(feature = "serde", serde(rename = "EA2C"))]
Ea2C,
#[yaserde(rename = "E3DC")]
#[cfg_attr(feature = "serde", serde(rename = "E3DC"))]
E3Dc,
#[yaserde(rename = "DKP9")]
#[cfg_attr(feature = "serde", serde(rename = "DKP9"))]
Dkp9,
#[yaserde(rename = "UKPT")]
#[cfg_attr(feature = "serde", serde(rename = "UKPT"))]
Ukpt,
#[yaserde(rename = "UKA1")]
#[cfg_attr(feature = "serde", serde(rename = "UKA1"))]
Uka1,
#[yaserde(rename = "EA9C")]
#[cfg_attr(feature = "serde", serde(rename = "EA9C"))]
Ea9C,
#[yaserde(rename = "EA5C")]
#[cfg_attr(feature = "serde", serde(rename = "EA5C"))]
Ea5C,
__Unknown__(String),
}
impl Default for Algorithm13Code {
fn default() -> Algorithm13Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Algorithm13Code {}
#[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:caam.009.001.03")]
pub enum Algorithm15Code {
#[yaserde(rename = "EA2C")]
#[cfg_attr(feature = "serde", serde(rename = "EA2C"))]
Ea2C,
#[yaserde(rename = "E3DC")]
#[cfg_attr(feature = "serde", serde(rename = "E3DC"))]
E3Dc,
#[yaserde(rename = "EA9C")]
#[cfg_attr(feature = "serde", serde(rename = "EA9C"))]
Ea9C,
#[yaserde(rename = "EA5C")]
#[cfg_attr(feature = "serde", serde(rename = "EA5C"))]
Ea5C,
__Unknown__(String),
}
impl Default for Algorithm15Code {
fn default() -> Algorithm15Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Algorithm15Code {}
#[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:caam.009.001.03")]
pub enum Algorithm7Code {
#[yaserde(rename = "ERSA")]
#[cfg_attr(feature = "serde", serde(rename = "ERSA"))]
Ersa,
#[yaserde(rename = "RSAO")]
#[cfg_attr(feature = "serde", serde(rename = "RSAO"))]
Rsao,
__Unknown__(String),
}
impl Default for Algorithm7Code {
fn default() -> Algorithm7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Algorithm7Code {}
#[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:caam.009.001.03")]
pub enum Algorithm8Code {
#[yaserde(rename = "MGF1")]
#[cfg_attr(feature = "serde", serde(rename = "MGF1"))]
Mgf1,
__Unknown__(String),
}
impl Default for Algorithm8Code {
fn default() -> Algorithm8Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Algorithm8Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AlgorithmIdentification11 {
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Algorithm7Code,
#[yaserde(rename = "Param")]
#[cfg_attr(feature = "serde", serde(rename = "Param"))]
pub param: Parameter4,
}
impl Validate for AlgorithmIdentification11 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AlgorithmIdentification12 {
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Algorithm8Code,
#[yaserde(rename = "Param")]
#[cfg_attr(feature = "serde", serde(rename = "Param"))]
pub param: Parameter5,
}
impl Validate for AlgorithmIdentification12 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AlgorithmIdentification13 {
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Algorithm13Code,
#[yaserde(rename = "Param")]
#[cfg_attr(feature = "serde", serde(rename = "Param"))]
pub param: Parameter6,
}
impl Validate for AlgorithmIdentification13 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AlgorithmIdentification14 {
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Algorithm15Code,
#[yaserde(rename = "Param")]
#[cfg_attr(feature = "serde", serde(rename = "Param"))]
pub param: Parameter6,
}
impl Validate for AlgorithmIdentification14 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AlgorithmIdentification15 {
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Algorithm12Code,
#[yaserde(rename = "Param")]
#[cfg_attr(feature = "serde", serde(rename = "Param"))]
pub param: Parameter7,
}
impl Validate for AlgorithmIdentification15 {}
#[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:caam.009.001.03")]
pub enum AttributeType1Code {
#[yaserde(rename = "CNAT")]
#[cfg_attr(feature = "serde", serde(rename = "CNAT"))]
Cnat,
#[yaserde(rename = "LATT")]
#[cfg_attr(feature = "serde", serde(rename = "LATT"))]
Latt,
#[yaserde(rename = "OATT")]
#[cfg_attr(feature = "serde", serde(rename = "OATT"))]
Oatt,
#[yaserde(rename = "OUAT")]
#[cfg_attr(feature = "serde", serde(rename = "OUAT"))]
Ouat,
#[yaserde(rename = "CATT")]
#[cfg_attr(feature = "serde", serde(rename = "CATT"))]
Catt,
__Unknown__(String),
}
impl Default for AttributeType1Code {
fn default() -> AttributeType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AttributeType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AuthenticatedData4 {
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Number,
#[yaserde(rename = "Rcpt")]
#[cfg_attr(feature = "serde", serde(rename = "Rcpt"))]
pub rcpt: Vec<Recipient4Choice>,
#[yaserde(rename = "MACAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "MACAlgo"))]
pub mac_algo: AlgorithmIdentification15,
#[yaserde(rename = "NcpsltdCntt")]
#[cfg_attr(feature = "serde", serde(rename = "NcpsltdCntt"))]
pub ncpsltd_cntt: EncapsulatedContent3,
#[yaserde(rename = "MAC")]
#[cfg_attr(feature = "serde", serde(rename = "MAC"))]
pub mac: Max140Binary,
}
impl Validate for AuthenticatedData4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct AutomatedTellerMachine8 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "AddtlId")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlId"))]
pub addtl_id: Max35Text,
#[yaserde(rename = "SeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "SeqNb"))]
pub seq_nb: Max35Text,
#[yaserde(rename = "BaseCcy")]
#[cfg_attr(feature = "serde", serde(rename = "BaseCcy"))]
pub base_ccy: ActiveCurrencyCode,
#[yaserde(rename = "Lctn")]
#[cfg_attr(feature = "serde", serde(rename = "Lctn"))]
pub lctn: PostalAddress17,
#[yaserde(rename = "LctnCtgy")]
#[cfg_attr(feature = "serde", serde(rename = "LctnCtgy"))]
pub lctn_ctgy: TransactionEnvironment2Code,
#[yaserde(rename = "Eqpmnt")]
#[cfg_attr(feature = "serde", serde(rename = "Eqpmnt"))]
pub eqpmnt: Atmequipment1,
}
impl Validate for AutomatedTellerMachine8 {}
#[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:caam.009.001.03")]
pub enum BytePadding1Code {
#[yaserde(rename = "LNGT")]
#[cfg_attr(feature = "serde", serde(rename = "LNGT"))]
Lngt,
#[yaserde(rename = "NUL8")]
#[cfg_attr(feature = "serde", serde(rename = "NUL8"))]
Nul8,
#[yaserde(rename = "NULG")]
#[cfg_attr(feature = "serde", serde(rename = "NULG"))]
Nulg,
#[yaserde(rename = "NULL")]
#[cfg_attr(feature = "serde", serde(rename = "NULL"))]
Null,
#[yaserde(rename = "RAND")]
#[cfg_attr(feature = "serde", serde(rename = "RAND"))]
Rand,
__Unknown__(String),
}
impl Default for BytePadding1Code {
fn default() -> BytePadding1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for BytePadding1Code {}
#[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:caam.009.001.03")]
pub enum CardDataReading1Code {
#[yaserde(rename = "TAGC")]
#[cfg_attr(feature = "serde", serde(rename = "TAGC"))]
Tagc,
#[yaserde(rename = "PHYS")]
#[cfg_attr(feature = "serde", serde(rename = "PHYS"))]
Phys,
#[yaserde(rename = "BRCD")]
#[cfg_attr(feature = "serde", serde(rename = "BRCD"))]
Brcd,
#[yaserde(rename = "MGST")]
#[cfg_attr(feature = "serde", serde(rename = "MGST"))]
Mgst,
#[yaserde(rename = "CICC")]
#[cfg_attr(feature = "serde", serde(rename = "CICC"))]
Cicc,
#[yaserde(rename = "DFLE")]
#[cfg_attr(feature = "serde", serde(rename = "DFLE"))]
Dfle,
#[yaserde(rename = "CTLS")]
#[cfg_attr(feature = "serde", serde(rename = "CTLS"))]
Ctls,
#[yaserde(rename = "ECTL")]
#[cfg_attr(feature = "serde", serde(rename = "ECTL"))]
Ectl,
__Unknown__(String),
}
impl Default for CardDataReading1Code {
fn default() -> CardDataReading1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CardDataReading1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct CertificateIssuer1 {
#[yaserde(rename = "RltvDstngshdNm")]
#[cfg_attr(feature = "serde", serde(rename = "RltvDstngshdNm"))]
pub rltv_dstngshd_nm: Vec<RelativeDistinguishedName1>,
}
impl Validate for CertificateIssuer1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct ContentInformationType10 {
#[yaserde(rename = "CnttTp")]
#[cfg_attr(feature = "serde", serde(rename = "CnttTp"))]
pub cntt_tp: ContentType2Code,
#[yaserde(rename = "EnvlpdData")]
#[cfg_attr(feature = "serde", serde(rename = "EnvlpdData"))]
pub envlpd_data: EnvelopedData4,
}
impl Validate for ContentInformationType10 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct ContentInformationType15 {
#[yaserde(rename = "CnttTp")]
#[cfg_attr(feature = "serde", serde(rename = "CnttTp"))]
pub cntt_tp: ContentType2Code,
#[yaserde(rename = "AuthntcdData")]
#[cfg_attr(feature = "serde", serde(rename = "AuthntcdData"))]
pub authntcd_data: AuthenticatedData4,
}
impl Validate for ContentInformationType15 {}
#[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:caam.009.001.03")]
pub enum ContentType2Code {
#[yaserde(rename = "DATA")]
#[cfg_attr(feature = "serde", serde(rename = "DATA"))]
Data,
#[yaserde(rename = "SIGN")]
#[cfg_attr(feature = "serde", serde(rename = "SIGN"))]
Sign,
#[yaserde(rename = "EVLP")]
#[cfg_attr(feature = "serde", serde(rename = "EVLP"))]
Evlp,
#[yaserde(rename = "DGST")]
#[cfg_attr(feature = "serde", serde(rename = "DGST"))]
Dgst,
#[yaserde(rename = "AUTH")]
#[cfg_attr(feature = "serde", serde(rename = "AUTH"))]
Auth,
__Unknown__(String),
}
impl Default for ContentType2Code {
fn default() -> ContentType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ContentType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct CountryCode (pub String);
crate::simple_type!(CountryCode);
impl Validate for CountryCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct CurrencyAndAmountSimpleType (pub String);
crate::simple_type!(CurrencyAndAmountSimpleType);
impl Validate for CurrencyAndAmountSimpleType {
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:caam.009.001.03")]
pub struct CurrencyAndAmount {
#[yaserde(text)]
pub value: String,
#[yaserde(attribute, rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: CurrencyCode,
}
impl Validate for CurrencyAndAmount {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct CurrencyCode (pub String);
crate::simple_type!(CurrencyCode);
impl Validate for CurrencyCode {}
#[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:caam.009.001.03")]
pub enum DataSetCategory7Code {
#[yaserde(rename = "ATMC")]
#[cfg_attr(feature = "serde", serde(rename = "ATMC"))]
Atmc,
#[yaserde(rename = "ATMP")]
#[cfg_attr(feature = "serde", serde(rename = "ATMP"))]
Atmp,
#[yaserde(rename = "APPR")]
#[cfg_attr(feature = "serde", serde(rename = "APPR"))]
Appr,
#[yaserde(rename = "CRAP")]
#[cfg_attr(feature = "serde", serde(rename = "CRAP"))]
Crap,
#[yaserde(rename = "CPRC")]
#[cfg_attr(feature = "serde", serde(rename = "CPRC"))]
Cprc,
#[yaserde(rename = "OEXR")]
#[cfg_attr(feature = "serde", serde(rename = "OEXR"))]
Oexr,
#[yaserde(rename = "AMNT")]
#[cfg_attr(feature = "serde", serde(rename = "AMNT"))]
Amnt,
#[yaserde(rename = "LOCC")]
#[cfg_attr(feature = "serde", serde(rename = "LOCC"))]
Locc,
#[yaserde(rename = "MNOC")]
#[cfg_attr(feature = "serde", serde(rename = "MNOC"))]
Mnoc,
__Unknown__(String),
}
impl Default for DataSetCategory7Code {
fn default() -> DataSetCategory7Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for DataSetCategory7Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Document {
#[yaserde(rename = "ATMRcncltnAdvc")]
#[cfg_attr(feature = "serde", serde(rename = "ATMRcncltnAdvc"))]
pub atm_rcncltn_advc: AtmreconciliationAdviceV03,
}
impl Validate for Document {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct EncapsulatedContent3 {
#[yaserde(rename = "CnttTp")]
#[cfg_attr(feature = "serde", serde(rename = "CnttTp"))]
pub cntt_tp: ContentType2Code,
#[yaserde(rename = "Cntt")]
#[cfg_attr(feature = "serde", serde(rename = "Cntt"))]
pub cntt: Max100KBinary,
}
impl Validate for EncapsulatedContent3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct EncryptedContent3 {
#[yaserde(rename = "CnttTp")]
#[cfg_attr(feature = "serde", serde(rename = "CnttTp"))]
pub cntt_tp: ContentType2Code,
#[yaserde(rename = "CnttNcrptnAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "CnttNcrptnAlgo"))]
pub cntt_ncrptn_algo: AlgorithmIdentification14,
#[yaserde(rename = "NcrptdData")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptdData"))]
pub ncrptd_data: Max100KBinary,
}
impl Validate for EncryptedContent3 {}
#[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:caam.009.001.03")]
pub enum EncryptionFormat1Code {
#[yaserde(rename = "TR31")]
#[cfg_attr(feature = "serde", serde(rename = "TR31"))]
Tr31,
#[yaserde(rename = "TR34")]
#[cfg_attr(feature = "serde", serde(rename = "TR34"))]
Tr34,
__Unknown__(String),
}
impl Default for EncryptionFormat1Code {
fn default() -> EncryptionFormat1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for EncryptionFormat1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct EnvelopedData4 {
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Number,
#[yaserde(rename = "Rcpt")]
#[cfg_attr(feature = "serde", serde(rename = "Rcpt"))]
pub rcpt: Vec<Recipient4Choice>,
#[yaserde(rename = "NcrptdCntt")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptdCntt"))]
pub ncrptd_cntt: EncryptedContent3,
}
impl Validate for EnvelopedData4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact3AlphaNumericText (pub String);
crate::simple_type!(Exact3AlphaNumericText);
impl Validate for Exact3AlphaNumericText {}
#[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:caam.009.001.03")]
pub enum FailureReason9Code {
#[yaserde(rename = "CDCP")]
#[cfg_attr(feature = "serde", serde(rename = "CDCP"))]
Cdcp,
#[yaserde(rename = "CDCL")]
#[cfg_attr(feature = "serde", serde(rename = "CDCL"))]
Cdcl,
#[yaserde(rename = "CDER")]
#[cfg_attr(feature = "serde", serde(rename = "CDER"))]
Cder,
#[yaserde(rename = "CUCL")]
#[cfg_attr(feature = "serde", serde(rename = "CUCL"))]
Cucl,
#[yaserde(rename = "CUDC")]
#[cfg_attr(feature = "serde", serde(rename = "CUDC"))]
Cudc,
#[yaserde(rename = "CDFG")]
#[cfg_attr(feature = "serde", serde(rename = "CDFG"))]
Cdfg,
#[yaserde(rename = "FILL")]
#[cfg_attr(feature = "serde", serde(rename = "FILL"))]
Fill,
#[yaserde(rename = "MALF")]
#[cfg_attr(feature = "serde", serde(rename = "MALF"))]
Malf,
#[yaserde(rename = "NDCL")]
#[cfg_attr(feature = "serde", serde(rename = "NDCL"))]
Ndcl,
#[yaserde(rename = "SECU")]
#[cfg_attr(feature = "serde", serde(rename = "SECU"))]
Secu,
#[yaserde(rename = "SFRD")]
#[cfg_attr(feature = "serde", serde(rename = "SFRD"))]
Sfrd,
#[yaserde(rename = "TIMO")]
#[cfg_attr(feature = "serde", serde(rename = "TIMO"))]
Timo,
#[yaserde(rename = "LATE")]
#[cfg_attr(feature = "serde", serde(rename = "LATE"))]
Late,
#[yaserde(rename = "UCPT")]
#[cfg_attr(feature = "serde", serde(rename = "UCPT"))]
Ucpt,
#[yaserde(rename = "UCMP")]
#[cfg_attr(feature = "serde", serde(rename = "UCMP"))]
Ucmp,
#[yaserde(rename = "USND")]
#[cfg_attr(feature = "serde", serde(rename = "USND"))]
Usnd,
#[yaserde(rename = "CSRV")]
#[cfg_attr(feature = "serde", serde(rename = "CSRV"))]
Csrv,
#[yaserde(rename = "CDRT")]
#[cfg_attr(feature = "serde", serde(rename = "CDRT"))]
Cdrt,
#[yaserde(rename = "CUTO")]
#[cfg_attr(feature = "serde", serde(rename = "CUTO"))]
Cuto,
#[yaserde(rename = "RJCT")]
#[cfg_attr(feature = "serde", serde(rename = "RJCT"))]
Rjct,
#[yaserde(rename = "FMTE")]
#[cfg_attr(feature = "serde", serde(rename = "FMTE"))]
Fmte,
#[yaserde(rename = "VLTE")]
#[cfg_attr(feature = "serde", serde(rename = "VLTE"))]
Vlte,
#[yaserde(rename = "CHFG")]
#[cfg_attr(feature = "serde", serde(rename = "CHFG"))]
Chfg,
#[yaserde(rename = "DCFG")]
#[cfg_attr(feature = "serde", serde(rename = "DCFG"))]
Dcfg,
#[yaserde(rename = "CQFG")]
#[cfg_attr(feature = "serde", serde(rename = "CQFG"))]
Cqfg,
#[yaserde(rename = "DFGC")]
#[cfg_attr(feature = "serde", serde(rename = "DFGC"))]
Dfgc,
#[yaserde(rename = "CFGC")]
#[cfg_attr(feature = "serde", serde(rename = "CFGC"))]
Cfgc,
#[yaserde(rename = "QFGC")]
#[cfg_attr(feature = "serde", serde(rename = "QFGC"))]
Qfgc,
#[yaserde(rename = "CQRT")]
#[cfg_attr(feature = "serde", serde(rename = "CQRT"))]
Cqrt,
#[yaserde(rename = "DCRT")]
#[cfg_attr(feature = "serde", serde(rename = "DCRT"))]
Dcrt,
#[yaserde(rename = "RSTR")]
#[cfg_attr(feature = "serde", serde(rename = "RSTR"))]
Rstr,
__Unknown__(String),
}
impl Default for FailureReason9Code {
fn default() -> FailureReason9Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FailureReason9Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct GenericIdentification77 {
#[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: PartyType12Code,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: PartyType12Code,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Min2Max3AlphaText,
#[yaserde(rename = "ShrtNm")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtNm"))]
pub shrt_nm: Max35Text,
}
impl Validate for GenericIdentification77 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct GeographicCoordinates1 {
#[yaserde(rename = "Lat")]
#[cfg_attr(feature = "serde", serde(rename = "Lat"))]
pub lat: Max16Text,
#[yaserde(rename = "Long")]
#[cfg_attr(feature = "serde", serde(rename = "Long"))]
pub long: Max16Text,
}
impl Validate for GeographicCoordinates1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct GeographicLocation1Choice {
#[yaserde(rename = "GeogcCordints")]
#[cfg_attr(feature = "serde", serde(rename = "GeogcCordints"))]
pub geogc_cordints: Option<GeographicCoordinates1>,
#[yaserde(rename = "UTMCordints")]
#[cfg_attr(feature = "serde", serde(rename = "UTMCordints"))]
pub utmcordints: Option<Utmcoordinates1>,
}
impl Validate for GeographicLocation1Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Header32 {
#[yaserde(rename = "MsgFctn")]
#[cfg_attr(feature = "serde", serde(rename = "MsgFctn"))]
pub msg_fctn: AtmmessageFunction2,
#[yaserde(rename = "PrtcolVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "PrtcolVrsn"))]
pub prtcol_vrsn: Max6Text,
#[yaserde(rename = "XchgId")]
#[cfg_attr(feature = "serde", serde(rename = "XchgId"))]
pub xchg_id: Max3NumericText,
#[yaserde(rename = "ReTrnsmssnCntr")]
#[cfg_attr(feature = "serde", serde(rename = "ReTrnsmssnCntr"))]
pub re_trnsmssn_cntr: Number,
#[yaserde(rename = "CreDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "CreDtTm"))]
pub cre_dt_tm: IsodateTime,
#[yaserde(rename = "InitgPty")]
#[cfg_attr(feature = "serde", serde(rename = "InitgPty"))]
pub initg_pty: Max35Text,
#[yaserde(rename = "RcptPty")]
#[cfg_attr(feature = "serde", serde(rename = "RcptPty"))]
pub rcpt_pty: Max35Text,
#[yaserde(rename = "PrcStat")]
#[cfg_attr(feature = "serde", serde(rename = "PrcStat"))]
pub prc_stat: Max35Text,
#[yaserde(rename = "Tracblt")]
#[cfg_attr(feature = "serde", serde(rename = "Tracblt"))]
pub tracblt: Vec<Traceability4>,
}
impl Validate for Header32 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct IsodateTime (pub String);
crate::simple_type!(IsodateTime);
impl Validate for IsodateTime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct 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:caam.009.001.03")]
pub struct IssuerAndSerialNumber1 {
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: CertificateIssuer1,
#[yaserde(rename = "SrlNb")]
#[cfg_attr(feature = "serde", serde(rename = "SrlNb"))]
pub srl_nb: Max35Binary,
}
impl Validate for IssuerAndSerialNumber1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Kek4 {
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Number,
#[yaserde(rename = "KEKId")]
#[cfg_attr(feature = "serde", serde(rename = "KEKId"))]
pub kek_id: Kekidentifier2,
#[yaserde(rename = "KeyNcrptnAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "KeyNcrptnAlgo"))]
pub key_ncrptn_algo: AlgorithmIdentification13,
#[yaserde(rename = "NcrptdKey")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptdKey"))]
pub ncrptd_key: Max500Binary,
}
impl Validate for Kek4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Kekidentifier2 {
#[yaserde(rename = "KeyId")]
#[cfg_attr(feature = "serde", serde(rename = "KeyId"))]
pub key_id: Max140Text,
#[yaserde(rename = "KeyVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "KeyVrsn"))]
pub key_vrsn: Max140Text,
#[yaserde(rename = "SeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "SeqNb"))]
pub seq_nb: Number,
#[yaserde(rename = "DerivtnId")]
#[cfg_attr(feature = "serde", serde(rename = "DerivtnId"))]
pub derivtn_id: Min5Max16Binary,
}
impl Validate for Kekidentifier2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct KeyTransport4 {
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Number,
#[yaserde(rename = "RcptId")]
#[cfg_attr(feature = "serde", serde(rename = "RcptId"))]
pub rcpt_id: Recipient5Choice,
#[yaserde(rename = "KeyNcrptnAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "KeyNcrptnAlgo"))]
pub key_ncrptn_algo: AlgorithmIdentification11,
#[yaserde(rename = "NcrptdKey")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptdKey"))]
pub ncrptd_key: Max5000Binary,
}
impl Validate for KeyTransport4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max100KBinary (pub String);
crate::simple_type!(Max100KBinary);
impl Validate for Max100KBinary {
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() > 102400 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 102400 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max104Text (pub String);
crate::simple_type!(Max104Text);
impl Validate for Max104Text {
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() > 104 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 104 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max10DateText (pub String);
crate::simple_type!(Max10DateText);
impl Validate for Max10DateText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max10Text (pub String);
crate::simple_type!(Max10Text);
impl Validate for Max10Text {
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() > 10 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 10 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max140Binary (pub String);
crate::simple_type!(Max140Binary);
impl Validate for Max140Binary {
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 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 Max35Binary (pub String);
crate::simple_type!(Max35Binary);
impl Validate for Max35Binary {
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 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 Max37Text (pub String);
crate::simple_type!(Max37Text);
impl Validate for Max37Text {
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() > 37 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 37 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max3NumericText (pub String);
crate::simple_type!(Max3NumericText);
impl Validate for Max3NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max3Text (pub String);
crate::simple_type!(Max3Text);
impl Validate for Max3Text {
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() > 3 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 3 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max5000Binary (pub String);
crate::simple_type!(Max5000Binary);
impl Validate for Max5000Binary {
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() > 5000 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 5000 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max500Binary (pub String);
crate::simple_type!(Max500Binary);
impl Validate for Max500Binary {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 500 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 500 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max6Text (pub String);
crate::simple_type!(Max6Text);
impl Validate for Max6Text {
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() > 6 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 6 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[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)]
pub struct Max76Text (pub String);
crate::simple_type!(Max76Text);
impl Validate for Max76Text {
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() > 76 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 76 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub enum MessageFunction11Code {
#[yaserde(rename = "BALN")]
#[cfg_attr(feature = "serde", serde(rename = "BALN"))]
Baln,
#[yaserde(rename = "CMPA")]
#[cfg_attr(feature = "serde", serde(rename = "CMPA"))]
Cmpa,
#[yaserde(rename = "CMPD")]
#[cfg_attr(feature = "serde", serde(rename = "CMPD"))]
Cmpd,
#[yaserde(rename = "ACMD")]
#[cfg_attr(feature = "serde", serde(rename = "ACMD"))]
Acmd,
#[yaserde(rename = "DVCC")]
#[cfg_attr(feature = "serde", serde(rename = "DVCC"))]
Dvcc,
#[yaserde(rename = "DIAQ")]
#[cfg_attr(feature = "serde", serde(rename = "DIAQ"))]
Diaq,
#[yaserde(rename = "DIAP")]
#[cfg_attr(feature = "serde", serde(rename = "DIAP"))]
Diap,
#[yaserde(rename = "GSTS")]
#[cfg_attr(feature = "serde", serde(rename = "GSTS"))]
Gsts,
#[yaserde(rename = "INQQ")]
#[cfg_attr(feature = "serde", serde(rename = "INQQ"))]
Inqq,
#[yaserde(rename = "INQP")]
#[cfg_attr(feature = "serde", serde(rename = "INQP"))]
Inqp,
#[yaserde(rename = "KYAQ")]
#[cfg_attr(feature = "serde", serde(rename = "KYAQ"))]
Kyaq,
#[yaserde(rename = "KYAP")]
#[cfg_attr(feature = "serde", serde(rename = "KYAP"))]
Kyap,
#[yaserde(rename = "PINQ")]
#[cfg_attr(feature = "serde", serde(rename = "PINQ"))]
Pinq,
#[yaserde(rename = "PINP")]
#[cfg_attr(feature = "serde", serde(rename = "PINP"))]
Pinp,
#[yaserde(rename = "RJAQ")]
#[cfg_attr(feature = "serde", serde(rename = "RJAQ"))]
Rjaq,
#[yaserde(rename = "RJAP")]
#[cfg_attr(feature = "serde", serde(rename = "RJAP"))]
Rjap,
#[yaserde(rename = "WITV")]
#[cfg_attr(feature = "serde", serde(rename = "WITV"))]
Witv,
#[yaserde(rename = "WITK")]
#[cfg_attr(feature = "serde", serde(rename = "WITK"))]
Witk,
#[yaserde(rename = "WITQ")]
#[cfg_attr(feature = "serde", serde(rename = "WITQ"))]
Witq,
#[yaserde(rename = "WITP")]
#[cfg_attr(feature = "serde", serde(rename = "WITP"))]
Witp,
#[yaserde(rename = "INQC")]
#[cfg_attr(feature = "serde", serde(rename = "INQC"))]
Inqc,
#[yaserde(rename = "H2AP")]
#[cfg_attr(feature = "serde", serde(rename = "H2AP"))]
H2Ap,
#[yaserde(rename = "H2AQ")]
#[cfg_attr(feature = "serde", serde(rename = "H2AQ"))]
H2Aq,
#[yaserde(rename = "TMOP")]
#[cfg_attr(feature = "serde", serde(rename = "TMOP"))]
Tmop,
#[yaserde(rename = "CSEC")]
#[cfg_attr(feature = "serde", serde(rename = "CSEC"))]
Csec,
#[yaserde(rename = "DSEC")]
#[cfg_attr(feature = "serde", serde(rename = "DSEC"))]
Dsec,
#[yaserde(rename = "SKSC")]
#[cfg_attr(feature = "serde", serde(rename = "SKSC"))]
Sksc,
#[yaserde(rename = "SSTS")]
#[cfg_attr(feature = "serde", serde(rename = "SSTS"))]
Ssts,
#[yaserde(rename = "DPSK")]
#[cfg_attr(feature = "serde", serde(rename = "DPSK"))]
Dpsk,
#[yaserde(rename = "DPSV")]
#[cfg_attr(feature = "serde", serde(rename = "DPSV"))]
Dpsv,
#[yaserde(rename = "DPSQ")]
#[cfg_attr(feature = "serde", serde(rename = "DPSQ"))]
Dpsq,
#[yaserde(rename = "DPSP")]
#[cfg_attr(feature = "serde", serde(rename = "DPSP"))]
Dpsp,
#[yaserde(rename = "EXPK")]
#[cfg_attr(feature = "serde", serde(rename = "EXPK"))]
Expk,
#[yaserde(rename = "EXPV")]
#[cfg_attr(feature = "serde", serde(rename = "EXPV"))]
Expv,
#[yaserde(rename = "TRFQ")]
#[cfg_attr(feature = "serde", serde(rename = "TRFQ"))]
Trfq,
#[yaserde(rename = "TRFP")]
#[cfg_attr(feature = "serde", serde(rename = "TRFP"))]
Trfp,
#[yaserde(rename = "RPTC")]
#[cfg_attr(feature = "serde", serde(rename = "RPTC"))]
Rptc,
__Unknown__(String),
}
impl Default for MessageFunction11Code {
fn default() -> MessageFunction11Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MessageFunction11Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Min2Max3AlphaText (pub String);
crate::simple_type!(Min2Max3AlphaText);
impl Validate for Min2Max3AlphaText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Min2Max3NumericText (pub String);
crate::simple_type!(Min2Max3NumericText);
impl Validate for Min2Max3NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Min5Max16Binary (pub String);
crate::simple_type!(Min5Max16Binary);
impl Validate for Min5Max16Binary {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 5 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 5 \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 Min8Max28NumericText (pub String);
crate::simple_type!(Min8Max28NumericText);
impl Validate for Min8Max28NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Number (pub String);
crate::simple_type!(Number);
impl Validate for Number {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Parameter4 {
#[yaserde(rename = "NcrptnFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptnFrmt"))]
pub ncrptn_frmt: EncryptionFormat1Code,
#[yaserde(rename = "DgstAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "DgstAlgo"))]
pub dgst_algo: Algorithm11Code,
#[yaserde(rename = "MskGnrtrAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "MskGnrtrAlgo"))]
pub msk_gnrtr_algo: AlgorithmIdentification12,
}
impl Validate for Parameter4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Parameter5 {
#[yaserde(rename = "DgstAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "DgstAlgo"))]
pub dgst_algo: Algorithm11Code,
}
impl Validate for Parameter5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Parameter6 {
#[yaserde(rename = "NcrptnFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptnFrmt"))]
pub ncrptn_frmt: EncryptionFormat1Code,
#[yaserde(rename = "InitlstnVctr")]
#[cfg_attr(feature = "serde", serde(rename = "InitlstnVctr"))]
pub initlstn_vctr: Max500Binary,
#[yaserde(rename = "BPddg")]
#[cfg_attr(feature = "serde", serde(rename = "BPddg"))]
pub b_pddg: BytePadding1Code,
}
impl Validate for Parameter6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Parameter7 {
#[yaserde(rename = "InitlstnVctr")]
#[cfg_attr(feature = "serde", serde(rename = "InitlstnVctr"))]
pub initlstn_vctr: Max500Binary,
#[yaserde(rename = "BPddg")]
#[cfg_attr(feature = "serde", serde(rename = "BPddg"))]
pub b_pddg: BytePadding1Code,
}
impl Validate for Parameter7 {}
#[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:caam.009.001.03")]
pub enum PartyType12Code {
#[yaserde(rename = "ACQR")]
#[cfg_attr(feature = "serde", serde(rename = "ACQR"))]
Acqr,
#[yaserde(rename = "ATMG")]
#[cfg_attr(feature = "serde", serde(rename = "ATMG"))]
Atmg,
#[yaserde(rename = "CISP")]
#[cfg_attr(feature = "serde", serde(rename = "CISP"))]
Cisp,
#[yaserde(rename = "DLIS")]
#[cfg_attr(feature = "serde", serde(rename = "DLIS"))]
Dlis,
#[yaserde(rename = "HSTG")]
#[cfg_attr(feature = "serde", serde(rename = "HSTG"))]
Hstg,
#[yaserde(rename = "ITAG")]
#[cfg_attr(feature = "serde", serde(rename = "ITAG"))]
Itag,
#[yaserde(rename = "OATM")]
#[cfg_attr(feature = "serde", serde(rename = "OATM"))]
Oatm,
__Unknown__(String),
}
impl Default for PartyType12Code {
fn default() -> PartyType12Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PartyType12Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct PaymentCard37 {
#[yaserde(rename = "CardDataNtryMd")]
#[cfg_attr(feature = "serde", serde(rename = "CardDataNtryMd"))]
pub card_data_ntry_md: CardDataReading1Code,
#[yaserde(rename = "FllbckInd")]
#[cfg_attr(feature = "serde", serde(rename = "FllbckInd"))]
pub fllbck_ind: TrueFalseIndicator,
#[yaserde(rename = "PrtctdCardData")]
#[cfg_attr(feature = "serde", serde(rename = "PrtctdCardData"))]
pub prtctd_card_data: ContentInformationType10,
#[yaserde(rename = "PlainCardData")]
#[cfg_attr(feature = "serde", serde(rename = "PlainCardData"))]
pub plain_card_data: PlainCardData24,
#[yaserde(rename = "CardCtryCd")]
#[cfg_attr(feature = "serde", serde(rename = "CardCtryCd"))]
pub card_ctry_cd: Max3Text,
#[yaserde(rename = "CardCcyCd")]
#[cfg_attr(feature = "serde", serde(rename = "CardCcyCd"))]
pub card_ccy_cd: Exact3AlphaNumericText,
#[yaserde(rename = "ElctrncPrsBal")]
#[cfg_attr(feature = "serde", serde(rename = "ElctrncPrsBal"))]
pub elctrnc_prs_bal: CurrencyAndAmount,
}
impl Validate for PaymentCard37 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct PlainCardData24 {
#[yaserde(rename = "PAN")]
#[cfg_attr(feature = "serde", serde(rename = "PAN"))]
pub pan: Min8Max28NumericText,
#[yaserde(rename = "CardSeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "CardSeqNb"))]
pub card_seq_nb: Min2Max3NumericText,
#[yaserde(rename = "FctvDt")]
#[cfg_attr(feature = "serde", serde(rename = "FctvDt"))]
pub fctv_dt: Max10Text,
#[yaserde(rename = "XpryDt")]
#[cfg_attr(feature = "serde", serde(rename = "XpryDt"))]
pub xpry_dt: Max10DateText,
#[yaserde(rename = "Trck1")]
#[cfg_attr(feature = "serde", serde(rename = "Trck1"))]
pub trck_1: Max76Text,
#[yaserde(rename = "Trck2")]
#[cfg_attr(feature = "serde", serde(rename = "Trck2"))]
pub trck_2: Max37Text,
#[yaserde(rename = "Trck3")]
#[cfg_attr(feature = "serde", serde(rename = "Trck3"))]
pub trck_3: Max104Text,
}
impl Validate for PlainCardData24 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct PostalAddress17 {
#[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: Vec<Max35Text>,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: CountryCode,
#[yaserde(rename = "GLctn")]
#[cfg_attr(feature = "serde", serde(rename = "GLctn"))]
pub g_lctn: GeographicLocation1Choice,
}
impl Validate for PostalAddress17 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Recipient4Choice {
#[yaserde(rename = "KeyTrnsprt")]
#[cfg_attr(feature = "serde", serde(rename = "KeyTrnsprt"))]
pub key_trnsprt: Option<KeyTransport4>,
#[yaserde(rename = "KEK")]
#[cfg_attr(feature = "serde", serde(rename = "KEK"))]
pub kek: Option<Kek4>,
#[yaserde(rename = "KeyIdr")]
#[cfg_attr(feature = "serde", serde(rename = "KeyIdr"))]
pub key_idr: Option<Kekidentifier2>,
}
impl Validate for Recipient4Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Recipient5Choice {
#[yaserde(rename = "IssrAndSrlNb")]
#[cfg_attr(feature = "serde", serde(rename = "IssrAndSrlNb"))]
pub issr_and_srl_nb: Option<IssuerAndSerialNumber1>,
#[yaserde(rename = "KeyIdr")]
#[cfg_attr(feature = "serde", serde(rename = "KeyIdr"))]
pub key_idr: Option<Kekidentifier2>,
}
impl Validate for Recipient5Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct RelativeDistinguishedName1 {
#[yaserde(rename = "AttrTp")]
#[cfg_attr(feature = "serde", serde(rename = "AttrTp"))]
pub attr_tp: AttributeType1Code,
#[yaserde(rename = "AttrVal")]
#[cfg_attr(feature = "serde", serde(rename = "AttrVal"))]
pub attr_val: Max140Text,
}
impl Validate for RelativeDistinguishedName1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct TerminalHosting1 {
#[yaserde(rename = "Ctgy")]
#[cfg_attr(feature = "serde", serde(rename = "Ctgy"))]
pub ctgy: TransactionEnvironment3Code,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
}
impl Validate for TerminalHosting1 {}
#[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:caam.009.001.03")]
pub enum TerminalManagementActionResult2Code {
#[yaserde(rename = "CNTE")]
#[cfg_attr(feature = "serde", serde(rename = "CNTE"))]
Cnte,
#[yaserde(rename = "FMTE")]
#[cfg_attr(feature = "serde", serde(rename = "FMTE"))]
Fmte,
#[yaserde(rename = "HRDW")]
#[cfg_attr(feature = "serde", serde(rename = "HRDW"))]
Hrdw,
#[yaserde(rename = "NSUP")]
#[cfg_attr(feature = "serde", serde(rename = "NSUP"))]
Nsup,
#[yaserde(rename = "SECR")]
#[cfg_attr(feature = "serde", serde(rename = "SECR"))]
Secr,
#[yaserde(rename = "SUCC")]
#[cfg_attr(feature = "serde", serde(rename = "SUCC"))]
Succ,
#[yaserde(rename = "SYNE")]
#[cfg_attr(feature = "serde", serde(rename = "SYNE"))]
Syne,
#[yaserde(rename = "TIMO")]
#[cfg_attr(feature = "serde", serde(rename = "TIMO"))]
Timo,
#[yaserde(rename = "UKRF")]
#[cfg_attr(feature = "serde", serde(rename = "UKRF"))]
Ukrf,
__Unknown__(String),
}
impl Default for TerminalManagementActionResult2Code {
fn default() -> TerminalManagementActionResult2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TerminalManagementActionResult2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Traceability4 {
#[yaserde(rename = "RlayId")]
#[cfg_attr(feature = "serde", serde(rename = "RlayId"))]
pub rlay_id: GenericIdentification77,
#[yaserde(rename = "SeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "SeqNb"))]
pub seq_nb: Max35Text,
#[yaserde(rename = "TracDtTmIn")]
#[cfg_attr(feature = "serde", serde(rename = "TracDtTmIn"))]
pub trac_dt_tm_in: IsodateTime,
#[yaserde(rename = "TracDtTmOut")]
#[cfg_attr(feature = "serde", serde(rename = "TracDtTmOut"))]
pub trac_dt_tm_out: IsodateTime,
}
impl Validate for Traceability4 {}
#[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:caam.009.001.03")]
pub enum TransactionEnvironment2Code {
#[yaserde(rename = "PRIV")]
#[cfg_attr(feature = "serde", serde(rename = "PRIV"))]
Priv,
#[yaserde(rename = "PUBL")]
#[cfg_attr(feature = "serde", serde(rename = "PUBL"))]
Publ,
__Unknown__(String),
}
impl Default for TransactionEnvironment2Code {
fn default() -> TransactionEnvironment2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TransactionEnvironment2Code {}
#[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:caam.009.001.03")]
pub enum TransactionEnvironment3Code {
#[yaserde(rename = "BRCH")]
#[cfg_attr(feature = "serde", serde(rename = "BRCH"))]
Brch,
#[yaserde(rename = "MERC")]
#[cfg_attr(feature = "serde", serde(rename = "MERC"))]
Merc,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for TransactionEnvironment3Code {
fn default() -> TransactionEnvironment3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TransactionEnvironment3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct TransactionIdentifier3 {
#[yaserde(rename = "TxDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "TxDtTm"))]
pub tx_dt_tm: IsodateTime,
#[yaserde(rename = "HstTxDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "HstTxDtTm"))]
pub hst_tx_dt_tm: IsodateTime,
#[yaserde(rename = "TxRef")]
#[cfg_attr(feature = "serde", serde(rename = "TxRef"))]
pub tx_ref: Max35Text,
}
impl Validate for TransactionIdentifier3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct TrueFalseIndicator (pub bool);
crate::simple_type!(TrueFalseIndicator);
impl Validate for TrueFalseIndicator {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.009.001.03")]
pub struct Utmcoordinates1 {
#[yaserde(rename = "UTMZone")]
#[cfg_attr(feature = "serde", serde(rename = "UTMZone"))]
pub utm_zone: Max16Text,
#[yaserde(rename = "UTMEstwrd")]
#[cfg_attr(feature = "serde", serde(rename = "UTMEstwrd"))]
pub utm_estwrd: Number,
#[yaserde(rename = "UTMNrthwrd")]
#[cfg_attr(feature = "serde", serde(rename = "UTMNrthwrd"))]
pub utm_nrthwrd: Number,
}
impl Validate for Utmcoordinates1 {}
impl crate::MxMessage for Document {
const BUSINESS_AREA: crate::BusinessArea = crate::BusinessArea::caam;
const FUNCTIONALITY: &'static str = "009";
const VARIANT: &'static str = "001";
const VERSION: &'static str = "03";
const MESSAGE_NAME: &'static str = "caam.009.001.03";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:caam.009.001.03";
}