#![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.003.001.03")]
pub struct Atmcommand11 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Atmcommand6Code,
#[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 Atmcommand11 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct Atmcommand12 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Atmcommand6Code,
#[yaserde(rename = "CmdId")]
#[cfg_attr(feature = "serde", serde(rename = "CmdId"))]
pub cmd_id: AtmcommandIdentification1,
}
impl Validate for Atmcommand12 {}
#[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.003.001.03")]
pub enum Atmcommand6Code {
#[yaserde(rename = "ABAL")]
#[cfg_attr(feature = "serde", serde(rename = "ABAL"))]
Abal,
#[yaserde(rename = "ASTS")]
#[cfg_attr(feature = "serde", serde(rename = "ASTS"))]
Asts,
#[yaserde(rename = "CFGT")]
#[cfg_attr(feature = "serde", serde(rename = "CFGT"))]
Cfgt,
#[yaserde(rename = "CCNT")]
#[cfg_attr(feature = "serde", serde(rename = "CCNT"))]
Ccnt,
#[yaserde(rename = "DISC")]
#[cfg_attr(feature = "serde", serde(rename = "DISC"))]
Disc,
#[yaserde(rename = "KACT")]
#[cfg_attr(feature = "serde", serde(rename = "KACT"))]
Kact,
#[yaserde(rename = "KDAC")]
#[cfg_attr(feature = "serde", serde(rename = "KDAC"))]
Kdac,
#[yaserde(rename = "KDWL")]
#[cfg_attr(feature = "serde", serde(rename = "KDWL"))]
Kdwl,
#[yaserde(rename = "KRMV")]
#[cfg_attr(feature = "serde", serde(rename = "KRMV"))]
Krmv,
#[yaserde(rename = "SCFU")]
#[cfg_attr(feature = "serde", serde(rename = "SCFU"))]
Scfu,
#[yaserde(rename = "SSCU")]
#[cfg_attr(feature = "serde", serde(rename = "SSCU"))]
Sscu,
#[yaserde(rename = "SSTU")]
#[cfg_attr(feature = "serde", serde(rename = "SSTU"))]
Sstu,
#[yaserde(rename = "SNDM")]
#[cfg_attr(feature = "serde", serde(rename = "SNDM"))]
Sndm,
#[yaserde(rename = "HKCG")]
#[cfg_attr(feature = "serde", serde(rename = "HKCG"))]
Hkcg,
#[yaserde(rename = "HKRV")]
#[cfg_attr(feature = "serde", serde(rename = "HKRV"))]
Hkrv,
#[yaserde(rename = "KCHG")]
#[cfg_attr(feature = "serde", serde(rename = "KCHG"))]
Kchg,
__Unknown__(String),
}
impl Default for Atmcommand6Code {
fn default() -> Atmcommand6Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Atmcommand6Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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.003.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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub struct Atmenvironment15 {
#[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: AutomatedTellerMachine6,
}
impl Validate for Atmenvironment15 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub struct Atmequipment3 {
#[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 = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Max35Text,
#[yaserde(rename = "SrlNb")]
#[cfg_attr(feature = "serde", serde(rename = "SrlNb"))]
pub srl_nb: Max35Text,
#[yaserde(rename = "SgndSrlNb")]
#[cfg_attr(feature = "serde", serde(rename = "SgndSrlNb"))]
pub sgnd_srl_nb: ContentInformationType14,
#[yaserde(rename = "FrmwrPrvdr")]
#[cfg_attr(feature = "serde", serde(rename = "FrmwrPrvdr"))]
pub frmwr_prvdr: Max35Text,
#[yaserde(rename = "FrmwrId")]
#[cfg_attr(feature = "serde", serde(rename = "FrmwrId"))]
pub frmwr_id: Max35Text,
#[yaserde(rename = "FrmwrVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "FrmwrVrsn"))]
pub frmwr_vrsn: Max35Text,
}
impl Validate for Atmequipment3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AtmkeyDownloadRequest4 {
#[yaserde(rename = "Envt")]
#[cfg_attr(feature = "serde", serde(rename = "Envt"))]
pub envt: Atmenvironment15,
#[yaserde(rename = "CmdRslt")]
#[cfg_attr(feature = "serde", serde(rename = "CmdRslt"))]
pub cmd_rslt: Vec<Atmcommand11>,
#[yaserde(rename = "CmdCntxt")]
#[cfg_attr(feature = "serde", serde(rename = "CmdCntxt"))]
pub cmd_cntxt: Atmcommand12,
#[yaserde(rename = "ATMSctyCntxt")]
#[cfg_attr(feature = "serde", serde(rename = "ATMSctyCntxt"))]
pub atm_scty_cntxt: AtmsecurityContext3,
#[yaserde(rename = "ATMSctyParams")]
#[cfg_attr(feature = "serde", serde(rename = "ATMSctyParams"))]
pub atm_scty_params: SecurityParameters9,
#[yaserde(rename = "HstChllng")]
#[cfg_attr(feature = "serde", serde(rename = "HstChllng"))]
pub hst_chllng: Max140Binary,
}
impl Validate for AtmkeyDownloadRequest4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AtmkeyDownloadRequestV03 {
#[yaserde(rename = "Hdr")]
#[cfg_attr(feature = "serde", serde(rename = "Hdr"))]
pub hdr: Header31,
#[yaserde(rename = "PrtctdATMKeyDwnldReq")]
#[cfg_attr(feature = "serde", serde(rename = "PrtctdATMKeyDwnldReq"))]
pub prtctd_atm_key_dwnld_req: ContentInformationType10,
#[yaserde(rename = "ATMKeyDwnldReq")]
#[cfg_attr(feature = "serde", serde(rename = "ATMKeyDwnldReq"))]
pub atm_key_dwnld_req: AtmkeyDownloadRequest4,
#[yaserde(rename = "SctyTrlr")]
#[cfg_attr(feature = "serde", serde(rename = "SctyTrlr"))]
pub scty_trlr: ContentInformationType13,
}
impl Validate for AtmkeyDownloadRequestV03 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub struct AtmsecurityConfiguration1 {
#[yaserde(rename = "Keys")]
#[cfg_attr(feature = "serde", serde(rename = "Keys"))]
pub keys: AtmsecurityConfiguration2,
#[yaserde(rename = "Ncrptn")]
#[cfg_attr(feature = "serde", serde(rename = "Ncrptn"))]
pub ncrptn: AtmsecurityConfiguration3,
#[yaserde(rename = "MACAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "MACAlgo"))]
pub mac_algo: Vec<Algorithm12Code>,
#[yaserde(rename = "DgstAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "DgstAlgo"))]
pub dgst_algo: Vec<Algorithm11Code>,
#[yaserde(rename = "DgtlSgntr")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlSgntr"))]
pub dgtl_sgntr: AtmsecurityConfiguration4,
#[yaserde(rename = "PIN")]
#[cfg_attr(feature = "serde", serde(rename = "PIN"))]
pub pin: AtmsecurityConfiguration5,
#[yaserde(rename = "MsgPrtcn")]
#[cfg_attr(feature = "serde", serde(rename = "MsgPrtcn"))]
pub msg_prtcn: Vec<MessageProtection1Code>,
}
impl Validate for AtmsecurityConfiguration1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AtmsecurityConfiguration2 {
#[yaserde(rename = "MaxSmmtrcKey")]
#[cfg_attr(feature = "serde", serde(rename = "MaxSmmtrcKey"))]
pub max_smmtrc_key: Number,
#[yaserde(rename = "MaxAsmmtrcKey")]
#[cfg_attr(feature = "serde", serde(rename = "MaxAsmmtrcKey"))]
pub max_asmmtrc_key: Number,
#[yaserde(rename = "MaxRSAKeyLngth")]
#[cfg_attr(feature = "serde", serde(rename = "MaxRSAKeyLngth"))]
pub max_rsa_key_lngth: Number,
#[yaserde(rename = "MaxRootKeyLngth")]
#[cfg_attr(feature = "serde", serde(rename = "MaxRootKeyLngth"))]
pub max_root_key_lngth: Number,
}
impl Validate for AtmsecurityConfiguration2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AtmsecurityConfiguration3 {
#[yaserde(rename = "AsmmtrcNcrptn")]
#[cfg_attr(feature = "serde", serde(rename = "AsmmtrcNcrptn"))]
pub asmmtrc_ncrptn: TrueFalseIndicator,
#[yaserde(rename = "AsmmtrcKeyStdId")]
#[cfg_attr(feature = "serde", serde(rename = "AsmmtrcKeyStdId"))]
pub asmmtrc_key_std_id: TrueFalseIndicator,
#[yaserde(rename = "AsmmtrcNcrptnAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "AsmmtrcNcrptnAlgo"))]
pub asmmtrc_ncrptn_algo: Vec<Algorithm7Code>,
#[yaserde(rename = "SmmtrcTrnsprtKey")]
#[cfg_attr(feature = "serde", serde(rename = "SmmtrcTrnsprtKey"))]
pub smmtrc_trnsprt_key: TrueFalseIndicator,
#[yaserde(rename = "SmmtrcTrnsprtKeyAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "SmmtrcTrnsprtKeyAlgo"))]
pub smmtrc_trnsprt_key_algo: Vec<Algorithm13Code>,
#[yaserde(rename = "SmmtrcNcrptnAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "SmmtrcNcrptnAlgo"))]
pub smmtrc_ncrptn_algo: Vec<Algorithm15Code>,
#[yaserde(rename = "NcrptnFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptnFrmt"))]
pub ncrptn_frmt: Vec<EncryptionFormat1Code>,
}
impl Validate for AtmsecurityConfiguration3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AtmsecurityConfiguration4 {
#[yaserde(rename = "MaxCerts")]
#[cfg_attr(feature = "serde", serde(rename = "MaxCerts"))]
pub max_certs: Number,
#[yaserde(rename = "MaxSgntrs")]
#[cfg_attr(feature = "serde", serde(rename = "MaxSgntrs"))]
pub max_sgntrs: Number,
#[yaserde(rename = "DgtlSgntrAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlSgntrAlgo"))]
pub dgtl_sgntr_algo: Vec<Algorithm14Code>,
}
impl Validate for AtmsecurityConfiguration4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AtmsecurityConfiguration5 {
#[yaserde(rename = "PINFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "PINFrmt"))]
pub pin_frmt: Vec<Pinformat4Code>,
#[yaserde(rename = "PINLngthCpblties")]
#[cfg_attr(feature = "serde", serde(rename = "PINLngthCpblties"))]
pub pin_lngth_cpblties: Number,
}
impl Validate for AtmsecurityConfiguration5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AtmsecurityContext3 {
#[yaserde(rename = "CurSctySchme")]
#[cfg_attr(feature = "serde", serde(rename = "CurSctySchme"))]
pub cur_scty_schme: AtmsecurityScheme3Code,
#[yaserde(rename = "DvcPrprty")]
#[cfg_attr(feature = "serde", serde(rename = "DvcPrprty"))]
pub dvc_prprty: Atmequipment3,
#[yaserde(rename = "CurCfgtn")]
#[cfg_attr(feature = "serde", serde(rename = "CurCfgtn"))]
pub cur_cfgtn: AtmsecurityConfiguration1,
}
impl Validate for AtmsecurityContext3 {}
#[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.003.001.03")]
pub enum AtmsecurityScheme3Code {
#[yaserde(rename = "APPK")]
#[cfg_attr(feature = "serde", serde(rename = "APPK"))]
Appk,
#[yaserde(rename = "CERT")]
#[cfg_attr(feature = "serde", serde(rename = "CERT"))]
Cert,
#[yaserde(rename = "FRAN")]
#[cfg_attr(feature = "serde", serde(rename = "FRAN"))]
Fran,
#[yaserde(rename = "DTCH")]
#[cfg_attr(feature = "serde", serde(rename = "DTCH"))]
Dtch,
#[yaserde(rename = "LUXG")]
#[cfg_attr(feature = "serde", serde(rename = "LUXG"))]
Luxg,
#[yaserde(rename = "MANU")]
#[cfg_attr(feature = "serde", serde(rename = "MANU"))]
Manu,
#[yaserde(rename = "PKIP")]
#[cfg_attr(feature = "serde", serde(rename = "PKIP"))]
Pkip,
#[yaserde(rename = "SIGN")]
#[cfg_attr(feature = "serde", serde(rename = "SIGN"))]
Sign,
#[yaserde(rename = "NONE")]
#[cfg_attr(feature = "serde", serde(rename = "NONE"))]
None,
#[yaserde(rename = "TR34")]
#[cfg_attr(feature = "serde", serde(rename = "TR34"))]
Tr34,
__Unknown__(String),
}
impl Default for AtmsecurityScheme3Code {
fn default() -> AtmsecurityScheme3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AtmsecurityScheme3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct Atmsignature2Choice {
#[yaserde(rename = "DgtlSgntr")]
#[cfg_attr(feature = "serde", serde(rename = "DgtlSgntr"))]
pub dgtl_sgntr: Option<ContentInformationType14>,
#[yaserde(rename = "TRRltdData")]
#[cfg_attr(feature = "serde", serde(rename = "TRRltdData"))]
pub trrltd_data: Option<TrrelatedData2>,
}
impl Validate for Atmsignature2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.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.003.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.003.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.003.001.03")]
pub enum Algorithm14Code {
#[yaserde(rename = "ERS2")]
#[cfg_attr(feature = "serde", serde(rename = "ERS2"))]
Ers2,
#[yaserde(rename = "ERS1")]
#[cfg_attr(feature = "serde", serde(rename = "ERS1"))]
Ers1,
#[yaserde(rename = "RPSS")]
#[cfg_attr(feature = "serde", serde(rename = "RPSS"))]
Rpss,
__Unknown__(String),
}
impl Default for Algorithm14Code {
fn default() -> Algorithm14Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Algorithm14Code {}
#[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.003.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.003.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.003.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.003.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.003.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.003.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.003.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.003.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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub struct AlgorithmIdentification16 {
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Algorithm11Code,
}
impl Validate for AlgorithmIdentification16 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct AlgorithmIdentification17 {
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Algorithm14Code,
#[yaserde(rename = "Param")]
#[cfg_attr(feature = "serde", serde(rename = "Param"))]
pub param: Parameter8,
}
impl Validate for AlgorithmIdentification17 {}
#[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.003.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.003.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.003.001.03")]
pub struct AutomatedTellerMachine6 {
#[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 = "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 AutomatedTellerMachine6 {}
#[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.003.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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.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.003.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.003.001.03")]
pub struct ContentInformationType13 {
#[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,
#[yaserde(rename = "SgndData")]
#[cfg_attr(feature = "serde", serde(rename = "SgndData"))]
pub sgnd_data: SignedData4,
}
impl Validate for ContentInformationType13 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct ContentInformationType14 {
#[yaserde(rename = "CnttTp")]
#[cfg_attr(feature = "serde", serde(rename = "CnttTp"))]
pub cntt_tp: ContentType2Code,
#[yaserde(rename = "SgndData")]
#[cfg_attr(feature = "serde", serde(rename = "SgndData"))]
pub sgnd_data: SignedData4,
}
impl Validate for ContentInformationType14 {}
#[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.003.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, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub struct CryptographicKey12 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max140Text,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max140Text,
#[yaserde(rename = "SctyDomnId")]
#[cfg_attr(feature = "serde", serde(rename = "SctyDomnId"))]
pub scty_domn_id: Max35Text,
#[yaserde(rename = "AddtlId")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlId"))]
pub addtl_id: Max35Binary,
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Max256Text,
#[yaserde(rename = "SeqCntr")]
#[cfg_attr(feature = "serde", serde(rename = "SeqCntr"))]
pub seq_cntr: Number,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: CryptographicKeyType3Code,
#[yaserde(rename = "Fctn")]
#[cfg_attr(feature = "serde", serde(rename = "Fctn"))]
pub fctn: Vec<KeyUsage1Code>,
#[yaserde(rename = "ActvtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "ActvtnDt"))]
pub actvtn_dt: IsodateTime,
#[yaserde(rename = "DeactvtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "DeactvtnDt"))]
pub deactvtn_dt: IsodateTime,
#[yaserde(rename = "KeyChckVal")]
#[cfg_attr(feature = "serde", serde(rename = "KeyChckVal"))]
pub key_chck_val: Max35Binary,
#[yaserde(rename = "PblcKeyVal")]
#[cfg_attr(feature = "serde", serde(rename = "PblcKeyVal"))]
pub pblc_key_val: PublicRSAKey1,
#[yaserde(rename = "KeyChcVal")]
#[cfg_attr(feature = "serde", serde(rename = "KeyChcVal"))]
pub key_chc_val: KeyChoiceValue2,
}
impl Validate for CryptographicKey12 {}
#[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.003.001.03")]
pub enum CryptographicKeyType3Code {
#[yaserde(rename = "AES2")]
#[cfg_attr(feature = "serde", serde(rename = "AES2"))]
Aes2,
#[yaserde(rename = "EDE3")]
#[cfg_attr(feature = "serde", serde(rename = "EDE3"))]
Ede3,
#[yaserde(rename = "DKP9")]
#[cfg_attr(feature = "serde", serde(rename = "DKP9"))]
Dkp9,
#[yaserde(rename = "AES9")]
#[cfg_attr(feature = "serde", serde(rename = "AES9"))]
Aes9,
#[yaserde(rename = "AES5")]
#[cfg_attr(feature = "serde", serde(rename = "AES5"))]
Aes5,
#[yaserde(rename = "EDE4")]
#[cfg_attr(feature = "serde", serde(rename = "EDE4"))]
Ede4,
__Unknown__(String),
}
impl Default for CryptographicKeyType3Code {
fn default() -> CryptographicKeyType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CryptographicKeyType3Code {}
#[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.003.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.003.001.03")]
pub struct Document {
#[yaserde(rename = "ATMKeyDwnldReq")]
#[cfg_attr(feature = "serde", serde(rename = "ATMKeyDwnldReq"))]
pub atm_key_dwnld_req: AtmkeyDownloadRequestV03,
}
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.003.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.003.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.003.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.003.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, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.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.003.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.003.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.003.001.03")]
pub struct Header31 {
#[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 = "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 Header31 {}
#[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:caam.003.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.003.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.003.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.003.001.03")]
pub struct KeyChoiceValue2 {
#[yaserde(rename = "NcrptdKeyVal")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptdKeyVal"))]
pub ncrptd_key_val: Option<ContentInformationType10>,
#[yaserde(rename = "TRRltdData")]
#[cfg_attr(feature = "serde", serde(rename = "TRRltdData"))]
pub trrltd_data: Option<TrrelatedData2>,
}
impl Validate for KeyChoiceValue2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub enum KeyUsage1Code {
#[yaserde(rename = "ENCR")]
#[cfg_attr(feature = "serde", serde(rename = "ENCR"))]
Encr,
#[yaserde(rename = "DCPT")]
#[cfg_attr(feature = "serde", serde(rename = "DCPT"))]
Dcpt,
#[yaserde(rename = "DENC")]
#[cfg_attr(feature = "serde", serde(rename = "DENC"))]
Denc,
#[yaserde(rename = "DDEC")]
#[cfg_attr(feature = "serde", serde(rename = "DDEC"))]
Ddec,
#[yaserde(rename = "TRNI")]
#[cfg_attr(feature = "serde", serde(rename = "TRNI"))]
Trni,
#[yaserde(rename = "TRNX")]
#[cfg_attr(feature = "serde", serde(rename = "TRNX"))]
Trnx,
#[yaserde(rename = "MACG")]
#[cfg_attr(feature = "serde", serde(rename = "MACG"))]
Macg,
#[yaserde(rename = "MACV")]
#[cfg_attr(feature = "serde", serde(rename = "MACV"))]
Macv,
#[yaserde(rename = "SIGG")]
#[cfg_attr(feature = "serde", serde(rename = "SIGG"))]
Sigg,
#[yaserde(rename = "SUGV")]
#[cfg_attr(feature = "serde", serde(rename = "SUGV"))]
Sugv,
#[yaserde(rename = "PINE")]
#[cfg_attr(feature = "serde", serde(rename = "PINE"))]
Pine,
#[yaserde(rename = "PIND")]
#[cfg_attr(feature = "serde", serde(rename = "PIND"))]
Pind,
#[yaserde(rename = "PINV")]
#[cfg_attr(feature = "serde", serde(rename = "PINV"))]
Pinv,
#[yaserde(rename = "KEYG")]
#[cfg_attr(feature = "serde", serde(rename = "KEYG"))]
Keyg,
#[yaserde(rename = "KEYI")]
#[cfg_attr(feature = "serde", serde(rename = "KEYI"))]
Keyi,
#[yaserde(rename = "KEYX")]
#[cfg_attr(feature = "serde", serde(rename = "KEYX"))]
Keyx,
#[yaserde(rename = "KEYD")]
#[cfg_attr(feature = "serde", serde(rename = "KEYD"))]
Keyd,
__Unknown__(String),
}
impl Default for KeyUsage1Code {
fn default() -> KeyUsage1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for KeyUsage1Code {}
#[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 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 Max256Text (pub String);
crate::simple_type!(Max256Text);
impl Validate for Max256Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 256 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 256 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max3000Binary (pub String);
crate::simple_type!(Max3000Binary);
impl Validate for Max3000Binary {
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() > 3000 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 3000 \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 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 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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub enum MessageProtection1Code {
#[yaserde(rename = "EVLP")]
#[cfg_attr(feature = "serde", serde(rename = "EVLP"))]
Evlp,
#[yaserde(rename = "MACB")]
#[cfg_attr(feature = "serde", serde(rename = "MACB"))]
Macb,
#[yaserde(rename = "MACM")]
#[cfg_attr(feature = "serde", serde(rename = "MACM"))]
Macm,
#[yaserde(rename = "UNPR")]
#[cfg_attr(feature = "serde", serde(rename = "UNPR"))]
Unpr,
__Unknown__(String),
}
impl Default for MessageProtection1Code {
fn default() -> MessageProtection1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MessageProtection1Code {}
#[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 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 Number (pub String);
crate::simple_type!(Number);
impl Validate for Number {}
#[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.003.001.03")]
pub enum Pinformat4Code {
#[yaserde(rename = "ANSI")]
#[cfg_attr(feature = "serde", serde(rename = "ANSI"))]
Ansi,
#[yaserde(rename = "BNCM")]
#[cfg_attr(feature = "serde", serde(rename = "BNCM"))]
Bncm,
#[yaserde(rename = "BKSY")]
#[cfg_attr(feature = "serde", serde(rename = "BKSY"))]
Bksy,
#[yaserde(rename = "DBLD")]
#[cfg_attr(feature = "serde", serde(rename = "DBLD"))]
Dbld,
#[yaserde(rename = "DBLC")]
#[cfg_attr(feature = "serde", serde(rename = "DBLC"))]
Dblc,
#[yaserde(rename = "ECI2")]
#[cfg_attr(feature = "serde", serde(rename = "ECI2"))]
Eci2,
#[yaserde(rename = "ECI3")]
#[cfg_attr(feature = "serde", serde(rename = "ECI3"))]
Eci3,
#[yaserde(rename = "EMVS")]
#[cfg_attr(feature = "serde", serde(rename = "EMVS"))]
Emvs,
#[yaserde(rename = "IBM3")]
#[cfg_attr(feature = "serde", serde(rename = "IBM3"))]
Ibm3,
#[yaserde(rename = "ISO0")]
#[cfg_attr(feature = "serde", serde(rename = "ISO0"))]
Iso0,
#[yaserde(rename = "ISO1")]
#[cfg_attr(feature = "serde", serde(rename = "ISO1"))]
Iso1,
#[yaserde(rename = "ISO2")]
#[cfg_attr(feature = "serde", serde(rename = "ISO2"))]
Iso2,
#[yaserde(rename = "ISO3")]
#[cfg_attr(feature = "serde", serde(rename = "ISO3"))]
Iso3,
#[yaserde(rename = "ISO4")]
#[cfg_attr(feature = "serde", serde(rename = "ISO4"))]
Iso4,
#[yaserde(rename = "ISO5")]
#[cfg_attr(feature = "serde", serde(rename = "ISO5"))]
Iso5,
#[yaserde(rename = "VIS2")]
#[cfg_attr(feature = "serde", serde(rename = "VIS2"))]
Vis2,
#[yaserde(rename = "VIS3")]
#[cfg_attr(feature = "serde", serde(rename = "VIS3"))]
Vis3,
__Unknown__(String),
}
impl Default for Pinformat4Code {
fn default() -> Pinformat4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Pinformat4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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.003.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.003.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.003.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(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:caam.003.001.03")]
pub struct Parameter8 {
#[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,
#[yaserde(rename = "SaltLngth")]
#[cfg_attr(feature = "serde", serde(rename = "SaltLngth"))]
pub salt_lngth: Number,
#[yaserde(rename = "TrlrFld")]
#[cfg_attr(feature = "serde", serde(rename = "TrlrFld"))]
pub trlr_fld: Number,
}
impl Validate for Parameter8 {}
#[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.003.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.003.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.003.001.03")]
pub struct PublicRSAKey1 {
#[yaserde(rename = "Mdlus")]
#[cfg_attr(feature = "serde", serde(rename = "Mdlus"))]
pub mdlus: Max5000Binary,
#[yaserde(rename = "Expnt")]
#[cfg_attr(feature = "serde", serde(rename = "Expnt"))]
pub expnt: Max5000Binary,
}
impl Validate for PublicRSAKey1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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.003.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.003.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.003.001.03")]
pub struct SecurityParameters9 {
#[yaserde(rename = "Key")]
#[cfg_attr(feature = "serde", serde(rename = "Key"))]
pub key: CryptographicKey12,
#[yaserde(rename = "SgntrChc")]
#[cfg_attr(feature = "serde", serde(rename = "SgntrChc"))]
pub sgntr_chc: Atmsignature2Choice,
#[yaserde(rename = "Cert")]
#[cfg_attr(feature = "serde", serde(rename = "Cert"))]
pub cert: Vec<Max5000Binary>,
#[yaserde(rename = "ATMChllng")]
#[cfg_attr(feature = "serde", serde(rename = "ATMChllng"))]
pub atm_chllng: Max140Binary,
#[yaserde(rename = "ReqdKey")]
#[cfg_attr(feature = "serde", serde(rename = "ReqdKey"))]
pub reqd_key: Max35Text,
}
impl Validate for SecurityParameters9 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct SignedData4 {
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Number,
#[yaserde(rename = "DgstAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "DgstAlgo"))]
pub dgst_algo: Vec<AlgorithmIdentification16>,
#[yaserde(rename = "NcpsltdCntt")]
#[cfg_attr(feature = "serde", serde(rename = "NcpsltdCntt"))]
pub ncpsltd_cntt: EncapsulatedContent3,
#[yaserde(rename = "Cert")]
#[cfg_attr(feature = "serde", serde(rename = "Cert"))]
pub cert: Vec<Max5000Binary>,
#[yaserde(rename = "Sgnr")]
#[cfg_attr(feature = "serde", serde(rename = "Sgnr"))]
pub sgnr: Vec<Signer3>,
}
impl Validate for SignedData4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct Signer3 {
#[yaserde(rename = "Vrsn")]
#[cfg_attr(feature = "serde", serde(rename = "Vrsn"))]
pub vrsn: Number,
#[yaserde(rename = "SgnrId")]
#[cfg_attr(feature = "serde", serde(rename = "SgnrId"))]
pub sgnr_id: Recipient5Choice,
#[yaserde(rename = "DgstAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "DgstAlgo"))]
pub dgst_algo: AlgorithmIdentification16,
#[yaserde(rename = "SgntrAlgo")]
#[cfg_attr(feature = "serde", serde(rename = "SgntrAlgo"))]
pub sgntr_algo: AlgorithmIdentification17,
#[yaserde(rename = "Sgntr")]
#[cfg_attr(feature = "serde", serde(rename = "Sgntr"))]
pub sgntr: Max3000Binary,
}
impl Validate for Signer3 {}
#[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.003.001.03")]
pub enum Tr34Command1Code {
#[yaserde(rename = "BIND")]
#[cfg_attr(feature = "serde", serde(rename = "BIND"))]
Bind,
#[yaserde(rename = "HILR")]
#[cfg_attr(feature = "serde", serde(rename = "HILR"))]
Hilr,
#[yaserde(rename = "HILU")]
#[cfg_attr(feature = "serde", serde(rename = "HILU"))]
Hilu,
#[yaserde(rename = "RBND")]
#[cfg_attr(feature = "serde", serde(rename = "RBND"))]
Rbnd,
#[yaserde(rename = "UBND")]
#[cfg_attr(feature = "serde", serde(rename = "UBND"))]
Ubnd,
__Unknown__(String),
}
impl Default for Tr34Command1Code {
fn default() -> Tr34Command1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for Tr34Command1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.001.03")]
pub struct TrrelatedData2 {
#[yaserde(rename = "TR34Cmd")]
#[cfg_attr(feature = "serde", serde(rename = "TR34Cmd"))]
pub tr34_cmd: Tr34Command1Code,
#[yaserde(rename = "TRBlck")]
#[cfg_attr(feature = "serde", serde(rename = "TRBlck"))]
pub tr_blck: Max100KBinary,
}
impl Validate for TrrelatedData2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, 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.003.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.003.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.003.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.003.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.003.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)]
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.003.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 = "003";
const VARIANT: &'static str = "001";
const VERSION: &'static str = "03";
const MESSAGE_NAME: &'static str = "caam.003.001.03";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:caam.003.001.03";
}