#![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:cain.025.001.04")]
pub struct AticalaxProcessing {}
impl Validate for AticalaxProcessing {}
#[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:cain.025.001.04")]
pub enum AticapartyType1Code {
#[yaserde(rename = "ACCP")]
#[cfg_attr(feature = "serde", serde(rename = "ACCP"))]
Accp,
#[yaserde(rename = "ACQR")]
#[cfg_attr(feature = "serde", serde(rename = "ACQR"))]
Acqr,
#[yaserde(rename = "ICCA")]
#[cfg_attr(feature = "serde", serde(rename = "ICCA"))]
Icca,
#[yaserde(rename = "CISS")]
#[cfg_attr(feature = "serde", serde(rename = "CISS"))]
Ciss,
#[yaserde(rename = "DLIS")]
#[cfg_attr(feature = "serde", serde(rename = "DLIS"))]
Dlis,
#[yaserde(rename = "AGNT")]
#[cfg_attr(feature = "serde", serde(rename = "AGNT"))]
Agnt,
#[yaserde(rename = "ACQP")]
#[cfg_attr(feature = "serde", serde(rename = "ACQP"))]
Acqp,
#[yaserde(rename = "CISP")]
#[cfg_attr(feature = "serde", serde(rename = "CISP"))]
Cisp,
#[yaserde(rename = "WLPR")]
#[cfg_attr(feature = "serde", serde(rename = "WLPR"))]
Wlpr,
#[yaserde(rename = "PASP")]
#[cfg_attr(feature = "serde", serde(rename = "PASP"))]
Pasp,
__Unknown__(String),
}
impl Default for AticapartyType1Code {
fn default() -> AticapartyType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AticapartyType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AcceptorData1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "SchmeAssgndId")]
#[cfg_attr(feature = "serde", serde(rename = "SchmeAssgndId"))]
pub schme_assgnd_id: Max15AlphaNumericText,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max35Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max99Text,
#[yaserde(rename = "NmAndLctn")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndLctn"))]
pub nm_and_lctn: Max99Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "AddtlAdr")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlAdr"))]
pub addtl_adr: Max256Text,
#[yaserde(rename = "Email")]
#[cfg_attr(feature = "serde", serde(rename = "Email"))]
pub email: Max256Text,
#[yaserde(rename = "URL")]
#[cfg_attr(feature = "serde", serde(rename = "URL"))]
pub url: Max256Text,
#[yaserde(rename = "Phne")]
#[cfg_attr(feature = "serde", serde(rename = "Phne"))]
pub phne: Max35Text,
#[yaserde(rename = "CstmrSvc")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrSvc"))]
pub cstmr_svc: Max35Text,
#[yaserde(rename = "AddtlCtct")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlCtct"))]
pub addtl_ctct: Max256Text,
#[yaserde(rename = "BizRegnId")]
#[cfg_attr(feature = "serde", serde(rename = "BizRegnId"))]
pub biz_regn_id: Max35Text,
#[yaserde(rename = "BizRegnIdTp")]
#[cfg_attr(feature = "serde", serde(rename = "BizRegnIdTp"))]
pub biz_regn_id_tp: Max35Text,
#[yaserde(rename = "SvcLctn")]
#[cfg_attr(feature = "serde", serde(rename = "SvcLctn"))]
pub svc_lctn: Address4,
#[yaserde(rename = "LclData")]
#[cfg_attr(feature = "serde", serde(rename = "LclData"))]
pub lcl_data: Vec<LocalData19>,
#[yaserde(rename = "AddtlTxRefNb")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTxRefNb"))]
pub addtl_tx_ref_nb: Max70Text,
#[yaserde(rename = "CorpTaxId")]
#[cfg_attr(feature = "serde", serde(rename = "CorpTaxId"))]
pub corp_tax_id: Max35Text,
#[yaserde(rename = "CorpTaxIdTp")]
#[cfg_attr(feature = "serde", serde(rename = "CorpTaxIdTp"))]
pub corp_tax_id_tp: CorporateTaxType1Code,
#[yaserde(rename = "BizTp")]
#[cfg_attr(feature = "serde", serde(rename = "BizTp"))]
pub biz_tp: Max35Text,
#[yaserde(rename = "BizTpPrvddBy")]
#[cfg_attr(feature = "serde", serde(rename = "BizTpPrvddBy"))]
pub biz_tp_prvdd_by: Max35Text,
#[yaserde(rename = "OwnrTp")]
#[cfg_attr(feature = "serde", serde(rename = "OwnrTp"))]
pub ownr_tp: Max35Text,
#[yaserde(rename = "OwnrTpPrvddBy")]
#[cfg_attr(feature = "serde", serde(rename = "OwnrTpPrvddBy"))]
pub ownr_tp_prvdd_by: Max35Text,
#[yaserde(rename = "CertfctnTp")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnTp"))]
pub certfctn_tp: Max35Text,
#[yaserde(rename = "CertfctnTpPrvddBy")]
#[cfg_attr(feature = "serde", serde(rename = "CertfctnTpPrvddBy"))]
pub certfctn_tp_prvdd_by: Max35Text,
#[yaserde(rename = "OwnrEthnctyTp")]
#[cfg_attr(feature = "serde", serde(rename = "OwnrEthnctyTp"))]
pub ownr_ethncty_tp: Max35Text,
#[yaserde(rename = "OwnrEthnctyTpPrvddBy")]
#[cfg_attr(feature = "serde", serde(rename = "OwnrEthnctyTpPrvddBy"))]
pub ownr_ethncty_tp_prvdd_by: Max35Text,
#[yaserde(rename = "PrtnrId")]
#[cfg_attr(feature = "serde", serde(rename = "PrtnrId"))]
pub prtnr_id: Max35Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for AcceptorData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AcquirerData1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max11NumericText,
#[yaserde(rename = "BizId")]
#[cfg_attr(feature = "serde", serde(rename = "BizId"))]
pub biz_id: Max15AlphaNumericText,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Iso3NumericCountryCode,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max35Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max99Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LclData")]
#[cfg_attr(feature = "serde", serde(rename = "LclData"))]
pub lcl_data: Vec<LocalData20>,
}
impl Validate for AcquirerData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AddendumInitiationV04 {
#[yaserde(rename = "Hdr")]
#[cfg_attr(feature = "serde", serde(rename = "Hdr"))]
pub hdr: Header72,
#[yaserde(rename = "DataSrc")]
#[cfg_attr(feature = "serde", serde(rename = "DataSrc"))]
pub data_src: Max70Text,
#[yaserde(rename = "TxDesc")]
#[cfg_attr(feature = "serde", serde(rename = "TxDesc"))]
pub tx_desc: Max1000Text,
#[yaserde(rename = "Orgtr")]
#[cfg_attr(feature = "serde", serde(rename = "Orgtr"))]
pub orgtr: OriginatorData2,
#[yaserde(rename = "Acqrr")]
#[cfg_attr(feature = "serde", serde(rename = "Acqrr"))]
pub acqrr: AcquirerData1,
#[yaserde(rename = "Sndr")]
#[cfg_attr(feature = "serde", serde(rename = "Sndr"))]
pub sndr: SenderData1,
#[yaserde(rename = "Card")]
#[cfg_attr(feature = "serde", serde(rename = "Card"))]
pub card: CardData14,
#[yaserde(rename = "Rcvr")]
#[cfg_attr(feature = "serde", serde(rename = "Rcvr"))]
pub rcvr: ReceiverData1,
#[yaserde(rename = "Issr")]
#[cfg_attr(feature = "serde", serde(rename = "Issr"))]
pub issr: IssuerData1,
#[yaserde(rename = "Dstn")]
#[cfg_attr(feature = "serde", serde(rename = "Dstn"))]
pub dstn: DestinationData1,
#[yaserde(rename = "Prgrmm")]
#[cfg_attr(feature = "serde", serde(rename = "Prgrmm"))]
pub prgrmm: Vec<ProgrammeMode6>,
#[yaserde(rename = "TxId")]
#[cfg_attr(feature = "serde", serde(rename = "TxId"))]
pub tx_id: TransactionIdentification62,
#[yaserde(rename = "Tkn")]
#[cfg_attr(feature = "serde", serde(rename = "Tkn"))]
pub tkn: Token5,
#[yaserde(rename = "OrgnlDataElmts")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlDataElmts"))]
pub orgnl_data_elmts: OriginalDataElements6,
#[yaserde(rename = "Accptr")]
#[cfg_attr(feature = "serde", serde(rename = "Accptr"))]
pub accptr: AcceptorData1,
#[yaserde(rename = "Cstmr")]
#[cfg_attr(feature = "serde", serde(rename = "Cstmr"))]
pub cstmr: Customer4,
#[yaserde(rename = "Jursdctn")]
#[cfg_attr(feature = "serde", serde(rename = "Jursdctn"))]
pub jursdctn: Jurisdiction2,
#[yaserde(rename = "SttlmSvc")]
#[cfg_attr(feature = "serde", serde(rename = "SttlmSvc"))]
pub sttlm_svc: SettlementService7,
#[yaserde(rename = "AddtlFee")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlFee"))]
pub addtl_fee: Vec<AdditionalFee4>,
#[yaserde(rename = "Rcncltn")]
#[cfg_attr(feature = "serde", serde(rename = "Rcncltn"))]
pub rcncltn: Reconciliation5,
#[yaserde(rename = "TxSpcfcData")]
#[cfg_attr(feature = "serde", serde(rename = "TxSpcfcData"))]
pub tx_spcfc_data: TransactionSpecificData1,
#[yaserde(rename = "PrtctdData")]
#[cfg_attr(feature = "serde", serde(rename = "PrtctdData"))]
pub prtctd_data: Vec<EncryptedData2>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "SctyTrlr")]
#[cfg_attr(feature = "serde", serde(rename = "SctyTrlr"))]
pub scty_trlr: ContentInformationType41,
}
impl Validate for AddendumInitiationV04 {}
#[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:cain.025.001.04")]
pub enum AddendumTaxType4Code {
#[yaserde(rename = "TOTL")]
#[cfg_attr(feature = "serde", serde(rename = "TOTL"))]
Totl,
#[yaserde(rename = "ALMI")]
#[cfg_attr(feature = "serde", serde(rename = "ALMI"))]
Almi,
#[yaserde(rename = "ASNT")]
#[cfg_attr(feature = "serde", serde(rename = "ASNT"))]
Asnt,
#[yaserde(rename = "BPTX")]
#[cfg_attr(feature = "serde", serde(rename = "BPTX"))]
Bptx,
#[yaserde(rename = "KAPA")]
#[cfg_attr(feature = "serde", serde(rename = "KAPA"))]
Kapa,
#[yaserde(rename = "NKAP")]
#[cfg_attr(feature = "serde", serde(rename = "NKAP"))]
Nkap,
#[yaserde(rename = "CRTX")]
#[cfg_attr(feature = "serde", serde(rename = "CRTX"))]
Crtx,
#[yaserde(rename = "CSTX")]
#[cfg_attr(feature = "serde", serde(rename = "CSTX"))]
Cstx,
#[yaserde(rename = "CITX")]
#[cfg_attr(feature = "serde", serde(rename = "CITX"))]
Citx,
#[yaserde(rename = "COAX")]
#[cfg_attr(feature = "serde", serde(rename = "COAX"))]
Coax,
#[yaserde(rename = "CPST")]
#[cfg_attr(feature = "serde", serde(rename = "CPST"))]
Cpst,
#[yaserde(rename = "CORT")]
#[cfg_attr(feature = "serde", serde(rename = "CORT"))]
Cort,
#[yaserde(rename = "COTX")]
#[cfg_attr(feature = "serde", serde(rename = "COTX"))]
Cotx,
#[yaserde(rename = "CUST")]
#[cfg_attr(feature = "serde", serde(rename = "CUST"))]
Cust,
#[yaserde(rename = "DLTX")]
#[cfg_attr(feature = "serde", serde(rename = "DLTX"))]
Dltx,
#[yaserde(rename = "DUTY")]
#[cfg_attr(feature = "serde", serde(rename = "DUTY"))]
Duty,
#[yaserde(rename = "EMIT")]
#[cfg_attr(feature = "serde", serde(rename = "EMIT"))]
Emit,
#[yaserde(rename = "EMUT")]
#[cfg_attr(feature = "serde", serde(rename = "EMUT"))]
Emut,
#[yaserde(rename = "EMET")]
#[cfg_attr(feature = "serde", serde(rename = "EMET"))]
Emet,
#[yaserde(rename = "EMST")]
#[cfg_attr(feature = "serde", serde(rename = "EMST"))]
Emst,
#[yaserde(rename = "EMRT")]
#[cfg_attr(feature = "serde", serde(rename = "EMRT"))]
Emrt,
#[yaserde(rename = "ENTX")]
#[cfg_attr(feature = "serde", serde(rename = "ENTX"))]
Entx,
#[yaserde(rename = "ESET")]
#[cfg_attr(feature = "serde", serde(rename = "ESET"))]
Eset,
#[yaserde(rename = "ENVT")]
#[cfg_attr(feature = "serde", serde(rename = "ENVT"))]
Envt,
#[yaserde(rename = "EQUL")]
#[cfg_attr(feature = "serde", serde(rename = "EQUL"))]
Equl,
#[yaserde(rename = "EQTX")]
#[cfg_attr(feature = "serde", serde(rename = "EQTX"))]
Eqtx,
#[yaserde(rename = "EUTR")]
#[cfg_attr(feature = "serde", serde(rename = "EUTR"))]
Eutr,
#[yaserde(rename = "EXEC")]
#[cfg_attr(feature = "serde", serde(rename = "EXEC"))]
Exec,
#[yaserde(rename = "FEXT")]
#[cfg_attr(feature = "serde", serde(rename = "FEXT"))]
Fext,
#[yaserde(rename = "FNST")]
#[cfg_attr(feature = "serde", serde(rename = "FNST"))]
Fnst,
#[yaserde(rename = "FETX")]
#[cfg_attr(feature = "serde", serde(rename = "FETX"))]
Fetx,
#[yaserde(rename = "FVAT")]
#[cfg_attr(feature = "serde", serde(rename = "FVAT"))]
Fvat,
#[yaserde(rename = "FVTS")]
#[cfg_attr(feature = "serde", serde(rename = "FVTS"))]
Fvts,
#[yaserde(rename = "FIMT")]
#[cfg_attr(feature = "serde", serde(rename = "FIMT"))]
Fimt,
#[yaserde(rename = "FSST")]
#[cfg_attr(feature = "serde", serde(rename = "FSST"))]
Fsst,
#[yaserde(rename = "FICA")]
#[cfg_attr(feature = "serde", serde(rename = "FICA"))]
Fica,
#[yaserde(rename = "FRTX")]
#[cfg_attr(feature = "serde", serde(rename = "FRTX"))]
Frtx,
#[yaserde(rename = "FSTX")]
#[cfg_attr(feature = "serde", serde(rename = "FSTX"))]
Fstx,
#[yaserde(rename = "FSFT")]
#[cfg_attr(feature = "serde", serde(rename = "FSFT"))]
Fsft,
#[yaserde(rename = "FUVT")]
#[cfg_attr(feature = "serde", serde(rename = "FUVT"))]
Fuvt,
#[yaserde(rename = "GIFT")]
#[cfg_attr(feature = "serde", serde(rename = "GIFT"))]
Gift,
#[yaserde(rename = "GCAT")]
#[cfg_attr(feature = "serde", serde(rename = "GCAT"))]
Gcat,
#[yaserde(rename = "GRTX")]
#[cfg_attr(feature = "serde", serde(rename = "GRTX"))]
Grtx,
#[yaserde(rename = "HVAT")]
#[cfg_attr(feature = "serde", serde(rename = "HVAT"))]
Hvat,
#[yaserde(rename = "HATX")]
#[cfg_attr(feature = "serde", serde(rename = "HATX"))]
Hatx,
#[yaserde(rename = "HSTX")]
#[cfg_attr(feature = "serde", serde(rename = "HSTX"))]
Hstx,
#[yaserde(rename = "HWTX")]
#[cfg_attr(feature = "serde", serde(rename = "HWTX"))]
Hwtx,
#[yaserde(rename = "INHT")]
#[cfg_attr(feature = "serde", serde(rename = "INHT"))]
Inht,
#[yaserde(rename = "INPO")]
#[cfg_attr(feature = "serde", serde(rename = "INPO"))]
Inpo,
#[yaserde(rename = "LTTX")]
#[cfg_attr(feature = "serde", serde(rename = "LTTX"))]
Lttx,
#[yaserde(rename = "FLST")]
#[cfg_attr(feature = "serde", serde(rename = "FLST"))]
Flst,
#[yaserde(rename = "LITX")]
#[cfg_attr(feature = "serde", serde(rename = "LITX"))]
Litx,
#[yaserde(rename = "LOCO")]
#[cfg_attr(feature = "serde", serde(rename = "LOCO"))]
Loco,
#[yaserde(rename = "LSTX")]
#[cfg_attr(feature = "serde", serde(rename = "LSTX"))]
Lstx,
#[yaserde(rename = "LOCL")]
#[cfg_attr(feature = "serde", serde(rename = "LOCL"))]
Locl,
#[yaserde(rename = "LUTX")]
#[cfg_attr(feature = "serde", serde(rename = "LUTX"))]
Lutx,
#[yaserde(rename = "MATX")]
#[cfg_attr(feature = "serde", serde(rename = "MATX"))]
Matx,
#[yaserde(rename = "METX")]
#[cfg_attr(feature = "serde", serde(rename = "METX"))]
Metx,
#[yaserde(rename = "MITX")]
#[cfg_attr(feature = "serde", serde(rename = "MITX"))]
Mitx,
#[yaserde(rename = "MUTX")]
#[cfg_attr(feature = "serde", serde(rename = "MUTX"))]
Mutx,
#[yaserde(rename = "MUDE")]
#[cfg_attr(feature = "serde", serde(rename = "MUDE"))]
Mude,
#[yaserde(rename = "COUN")]
#[cfg_attr(feature = "serde", serde(rename = "COUN"))]
Coun,
#[yaserde(rename = "NATI")]
#[cfg_attr(feature = "serde", serde(rename = "NATI"))]
Nati,
#[yaserde(rename = "OCTX")]
#[cfg_attr(feature = "serde", serde(rename = "OCTX"))]
Octx,
#[yaserde(rename = "OPTX")]
#[cfg_attr(feature = "serde", serde(rename = "OPTX"))]
Optx,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "OTTX")]
#[cfg_attr(feature = "serde", serde(rename = "OTTX"))]
Ottx,
#[yaserde(rename = "LEVY")]
#[cfg_attr(feature = "serde", serde(rename = "LEVY"))]
Levy,
#[yaserde(rename = "POTX")]
#[cfg_attr(feature = "serde", serde(rename = "POTX"))]
Potx,
#[yaserde(rename = "PRTX")]
#[cfg_attr(feature = "serde", serde(rename = "PRTX"))]
Prtx,
#[yaserde(rename = "PSTX")]
#[cfg_attr(feature = "serde", serde(rename = "PSTX"))]
Pstx,
#[yaserde(rename = "PPTX")]
#[cfg_attr(feature = "serde", serde(rename = "PPTX"))]
Pptx,
#[yaserde(rename = "PROV")]
#[cfg_attr(feature = "serde", serde(rename = "PROV"))]
Prov,
#[yaserde(rename = "PHET")]
#[cfg_attr(feature = "serde", serde(rename = "PHET"))]
Phet,
#[yaserde(rename = "QUST")]
#[cfg_attr(feature = "serde", serde(rename = "QUST"))]
Qust,
#[yaserde(rename = "ROCI")]
#[cfg_attr(feature = "serde", serde(rename = "ROCI"))]
Roci,
#[yaserde(rename = "RCSB")]
#[cfg_attr(feature = "serde", serde(rename = "RCSB"))]
Rcsb,
#[yaserde(rename = "RCSD")]
#[cfg_attr(feature = "serde", serde(rename = "RCSD"))]
Rcsd,
#[yaserde(rename = "ROTX")]
#[cfg_attr(feature = "serde", serde(rename = "ROTX"))]
Rotx,
#[yaserde(rename = "RVAT")]
#[cfg_attr(feature = "serde", serde(rename = "RVAT"))]
Rvat,
#[yaserde(rename = "ROVI")]
#[cfg_attr(feature = "serde", serde(rename = "ROVI"))]
Rovi,
#[yaserde(rename = "SAUT")]
#[cfg_attr(feature = "serde", serde(rename = "SAUT"))]
Saut,
#[yaserde(rename = "SCTX")]
#[cfg_attr(feature = "serde", serde(rename = "SCTX"))]
Sctx,
#[yaserde(rename = "SPTX")]
#[cfg_attr(feature = "serde", serde(rename = "SPTX"))]
Sptx,
#[yaserde(rename = "STTA")]
#[cfg_attr(feature = "serde", serde(rename = "STTA"))]
Stta,
#[yaserde(rename = "STAM")]
#[cfg_attr(feature = "serde", serde(rename = "STAM"))]
Stam,
#[yaserde(rename = "SLST")]
#[cfg_attr(feature = "serde", serde(rename = "SLST"))]
Slst,
#[yaserde(rename = "SLTX")]
#[cfg_attr(feature = "serde", serde(rename = "SLTX"))]
Sltx,
#[yaserde(rename = "SETX")]
#[cfg_attr(feature = "serde", serde(rename = "SETX"))]
Setx,
#[yaserde(rename = "STPT")]
#[cfg_attr(feature = "serde", serde(rename = "STPT"))]
Stpt,
#[yaserde(rename = "SPTS")]
#[cfg_attr(feature = "serde", serde(rename = "SPTS"))]
Spts,
#[yaserde(rename = "SPFT")]
#[cfg_attr(feature = "serde", serde(rename = "SPFT"))]
Spft,
#[yaserde(rename = "SPTG")]
#[cfg_attr(feature = "serde", serde(rename = "SPTG"))]
Sptg,
#[yaserde(rename = "SRTX")]
#[cfg_attr(feature = "serde", serde(rename = "SRTX"))]
Srtx,
#[yaserde(rename = "SSTX")]
#[cfg_attr(feature = "serde", serde(rename = "SSTX"))]
Sstx,
#[yaserde(rename = "STAT")]
#[cfg_attr(feature = "serde", serde(rename = "STAT"))]
Stat,
#[yaserde(rename = "STSL")]
#[cfg_attr(feature = "serde", serde(rename = "STSL"))]
Stsl,
#[yaserde(rename = "STEX")]
#[cfg_attr(feature = "serde", serde(rename = "STEX"))]
Stex,
#[yaserde(rename = "SUTX")]
#[cfg_attr(feature = "serde", serde(rename = "SUTX"))]
Sutx,
#[yaserde(rename = "CTAX")]
#[cfg_attr(feature = "serde", serde(rename = "CTAX"))]
Ctax,
#[yaserde(rename = "TDDT")]
#[cfg_attr(feature = "serde", serde(rename = "TDDT"))]
Tddt,
#[yaserde(rename = "TELT")]
#[cfg_attr(feature = "serde", serde(rename = "TELT"))]
Telt,
#[yaserde(rename = "THTX")]
#[cfg_attr(feature = "serde", serde(rename = "THTX"))]
Thtx,
#[yaserde(rename = "TRAX")]
#[cfg_attr(feature = "serde", serde(rename = "TRAX"))]
Trax,
#[yaserde(rename = "TRAN")]
#[cfg_attr(feature = "serde", serde(rename = "TRAN"))]
Tran,
#[yaserde(rename = "UNSP")]
#[cfg_attr(feature = "serde", serde(rename = "UNSP"))]
Unsp,
#[yaserde(rename = "UUTX")]
#[cfg_attr(feature = "serde", serde(rename = "UUTX"))]
Uutx,
#[yaserde(rename = "VATA")]
#[cfg_attr(feature = "serde", serde(rename = "VATA"))]
Vata,
#[yaserde(rename = "VATB")]
#[cfg_attr(feature = "serde", serde(rename = "VATB"))]
Vatb,
#[yaserde(rename = "WTAX")]
#[cfg_attr(feature = "serde", serde(rename = "WTAX"))]
Wtax,
#[yaserde(rename = "WESV")]
#[cfg_attr(feature = "serde", serde(rename = "WESV"))]
Wesv,
#[yaserde(rename = "WITF")]
#[cfg_attr(feature = "serde", serde(rename = "WITF"))]
Witf,
#[yaserde(rename = "WITL")]
#[cfg_attr(feature = "serde", serde(rename = "WITL"))]
Witl,
#[yaserde(rename = "WITH")]
#[cfg_attr(feature = "serde", serde(rename = "WITH"))]
With,
#[yaserde(rename = "TNRT")]
#[cfg_attr(feature = "serde", serde(rename = "TNRT"))]
Tnrt,
#[yaserde(rename = "DPTX")]
#[cfg_attr(feature = "serde", serde(rename = "DPTX"))]
Dptx,
__Unknown__(String),
}
impl Default for AddendumTaxType4Code {
fn default() -> AddendumTaxType4Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for AddendumTaxType4Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AdditionalEnteredFleetData1 {
#[yaserde(rename = "Nmrc")]
#[cfg_attr(feature = "serde", serde(rename = "Nmrc"))]
pub nmrc: Max35NumericText,
#[yaserde(rename = "AlphaNmrc")]
#[cfg_attr(feature = "serde", serde(rename = "AlphaNmrc"))]
pub alpha_nmrc: Max350Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for AdditionalEnteredFleetData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AdditionalFee4 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Iso8583FeeTypeCode,
#[yaserde(rename = "Prgm")]
#[cfg_attr(feature = "serde", serde(rename = "Prgm"))]
pub prgm: Max35Text,
#[yaserde(rename = "Dscrptr")]
#[cfg_attr(feature = "serde", serde(rename = "Dscrptr"))]
pub dscrptr: Max35Text,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: BaseOneRate,
#[yaserde(rename = "RateFix")]
#[cfg_attr(feature = "serde", serde(rename = "RateFix"))]
pub rate_fix: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: Iso3NumericCurrencyCode,
#[yaserde(rename = "RcncltnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnAmt"))]
pub rcncltn_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "RcncltnCcy")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnCcy"))]
pub rcncltn_ccy: Iso3NumericCurrencyCode,
#[yaserde(rename = "RcncltnFctvXchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnFctvXchgRate"))]
pub rcncltn_fctv_xchg_rate: BaseOne25Rate,
#[yaserde(rename = "Assgnr")]
#[cfg_attr(feature = "serde", serde(rename = "Assgnr"))]
pub assgnr: AticapartyType1Code,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max140Text,
}
impl Validate for AdditionalFee4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Address4 {
#[yaserde(rename = "Line1")]
#[cfg_attr(feature = "serde", serde(rename = "Line1"))]
pub line_1: Max99Text,
#[yaserde(rename = "Line2")]
#[cfg_attr(feature = "serde", serde(rename = "Line2"))]
pub line_2: Max99Text,
#[yaserde(rename = "StrtNm")]
#[cfg_attr(feature = "serde", serde(rename = "StrtNm"))]
pub strt_nm: Max99Text,
#[yaserde(rename = "BldgNb")]
#[cfg_attr(feature = "serde", serde(rename = "BldgNb"))]
pub bldg_nb: Max16Text,
#[yaserde(rename = "PstlCd")]
#[cfg_attr(feature = "serde", serde(rename = "PstlCd"))]
pub pstl_cd: Max16Text,
#[yaserde(rename = "TwnNm")]
#[cfg_attr(feature = "serde", serde(rename = "TwnNm"))]
pub twn_nm: Max50Text,
#[yaserde(rename = "CtrySubDvsnMnr")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMnr"))]
pub ctry_sub_dvsn_mnr: IsocountrySubDivisionCode,
#[yaserde(rename = "CtrySubDvsnMjr")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMjr"))]
pub ctry_sub_dvsn_mjr: IsocountrySubDivisionCode,
#[yaserde(rename = "CtrySubDvsnMjrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMjrNm"))]
pub ctry_sub_dvsn_mjr_nm: Max50Text,
#[yaserde(rename = "CtrySubDvsnMnrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMnrNm"))]
pub ctry_sub_dvsn_mnr_nm: Max50Text,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Isomax3ACountryCode,
#[yaserde(rename = "GeogcLctn")]
#[cfg_attr(feature = "serde", serde(rename = "GeogcLctn"))]
pub geogc_lctn: GeographicPointInDecimalDegreesText,
}
impl Validate for Address4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Adjustment13 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
#[yaserde(rename = "AddtlTp")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTp"))]
pub addtl_tp: Max35Text,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max70Text,
#[yaserde(rename = "Rsn")]
#[cfg_attr(feature = "serde", serde(rename = "Rsn"))]
pub rsn: Max35Text,
#[yaserde(rename = "PrmtnCd")]
#[cfg_attr(feature = "serde", serde(rename = "PrmtnCd"))]
pub prmtn_cd: Max35Text,
#[yaserde(rename = "Pctg")]
#[cfg_attr(feature = "serde", serde(rename = "Pctg"))]
pub pctg: PercentageRate,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TaxOnOrgnlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnOrgnlAmt"))]
pub tax_on_orgnl_amt: TrueFalseIndicator,
}
impl Validate for Adjustment13 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Adjustment14 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
#[yaserde(rename = "AddtlTp")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlTp"))]
pub addtl_tp: Max35Text,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max70Text,
#[yaserde(rename = "Rsn")]
#[cfg_attr(feature = "serde", serde(rename = "Rsn"))]
pub rsn: Max35Text,
#[yaserde(rename = "PrmtnElgblty")]
#[cfg_attr(feature = "serde", serde(rename = "PrmtnElgblty"))]
pub prmtn_elgblty: TrueFalseIndicator,
#[yaserde(rename = "PrmtnCd")]
#[cfg_attr(feature = "serde", serde(rename = "PrmtnCd"))]
pub prmtn_cd: Max35Text,
#[yaserde(rename = "PrmtnCpnNb")]
#[cfg_attr(feature = "serde", serde(rename = "PrmtnCpnNb"))]
pub prmtn_cpn_nb: Max35Text,
#[yaserde(rename = "Qty")]
#[cfg_attr(feature = "serde", serde(rename = "Qty"))]
pub qty: DecimalNumber,
#[yaserde(rename = "UnitPric")]
#[cfg_attr(feature = "serde", serde(rename = "UnitPric"))]
pub unit_pric: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Pctg")]
#[cfg_attr(feature = "serde", serde(rename = "Pctg"))]
pub pctg: PercentageRate,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TaxOnOrgnlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TaxOnOrgnlAmt"))]
pub tax_on_orgnl_amt: TrueFalseIndicator,
}
impl Validate for Adjustment14 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Amount13 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max35Text,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
}
impl Validate for Amount13 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AmountAndTax1 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: TypeOfAmount24Code,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
}
impl Validate for AmountAndTax1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AncillaryPurchase4 {
#[yaserde(rename = "DocNb")]
#[cfg_attr(feature = "serde", serde(rename = "DocNb"))]
pub doc_nb: Max15Text,
#[yaserde(rename = "RltdDocNb")]
#[cfg_attr(feature = "serde", serde(rename = "RltdDocNb"))]
pub rltd_doc_nb: Max15Text,
#[yaserde(rename = "SvcCtgyCd")]
#[cfg_attr(feature = "serde", serde(rename = "SvcCtgyCd"))]
pub svc_ctgy_cd: Max4Text,
#[yaserde(rename = "SvcSubCtgyCd")]
#[cfg_attr(feature = "serde", serde(rename = "SvcSubCtgyCd"))]
pub svc_sub_ctgy_cd: Max4Text,
#[yaserde(rename = "SvcPrvdrSvcTp")]
#[cfg_attr(feature = "serde", serde(rename = "SvcPrvdrSvcTp"))]
pub svc_prvdr_svc_tp: Max35Text,
#[yaserde(rename = "CdtRsnCd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtRsnCd"))]
pub cdt_rsn_cd: Max35Text,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
#[yaserde(rename = "Fee")]
#[cfg_attr(feature = "serde", serde(rename = "Fee"))]
pub fee: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for AncillaryPurchase4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct AuthorisedAmount2 {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max350Text,
}
impl Validate for AuthorisedAmount2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Authority1 {
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Iso3NumericCountryCode,
#[yaserde(rename = "CtrySubDvsnMjr")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMjr"))]
pub ctry_sub_dvsn_mjr: IsocountrySubDivisionCode,
#[yaserde(rename = "CtrySubDvsnMnr")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMnr"))]
pub ctry_sub_dvsn_mnr: IsocountrySubDivisionCode,
#[yaserde(rename = "CtrySubDvsnMjrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMjrNm"))]
pub ctry_sub_dvsn_mjr_nm: Max50Text,
#[yaserde(rename = "CtrySubDvsnMnrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMnrNm"))]
pub ctry_sub_dvsn_mnr_nm: Max50Text,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max50Text,
}
impl Validate for Authority1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct BaseOne25Rate (pub String);
crate::simple_type!(BaseOne25Rate);
impl Validate for BaseOne25Rate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct BaseOneRate (pub String);
crate::simple_type!(BaseOneRate);
impl Validate for BaseOneRate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub enum CarRentalActivity2Code {
#[yaserde(rename = "CARS")]
#[cfg_attr(feature = "serde", serde(rename = "CARS"))]
Cars,
#[yaserde(rename = "GLBL")]
#[cfg_attr(feature = "serde", serde(rename = "GLBL"))]
Glbl,
#[yaserde(rename = "INDV")]
#[cfg_attr(feature = "serde", serde(rename = "INDV"))]
Indv,
#[yaserde(rename = "PETP")]
#[cfg_attr(feature = "serde", serde(rename = "PETP"))]
Petp,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for CarRentalActivity2Code {
fn default() -> CarRentalActivity2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CarRentalActivity2Code {}
#[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:cain.025.001.04")]
pub enum CarRentalServiceType3Code {
#[yaserde(rename = "ADJM")]
#[cfg_attr(feature = "serde", serde(rename = "ADJM"))]
Adjm,
#[yaserde(rename = "AUTH")]
#[cfg_attr(feature = "serde", serde(rename = "AUTH"))]
Auth,
#[yaserde(rename = "BAST")]
#[cfg_attr(feature = "serde", serde(rename = "BAST"))]
Bast,
#[yaserde(rename = "CLEA")]
#[cfg_attr(feature = "serde", serde(rename = "CLEA"))]
Clea,
#[yaserde(rename = "DMGS")]
#[cfg_attr(feature = "serde", serde(rename = "DMGS"))]
Dmgs,
#[yaserde(rename = "DLVR")]
#[cfg_attr(feature = "serde", serde(rename = "DLVR"))]
Dlvr,
#[yaserde(rename = "DPOF")]
#[cfg_attr(feature = "serde", serde(rename = "DPOF"))]
Dpof,
#[yaserde(rename = "ENTE")]
#[cfg_attr(feature = "serde", serde(rename = "ENTE"))]
Ente,
#[yaserde(rename = "EXTC")]
#[cfg_attr(feature = "serde", serde(rename = "EXTC"))]
Extc,
#[yaserde(rename = "EXDY")]
#[cfg_attr(feature = "serde", serde(rename = "EXDY"))]
Exdy,
#[yaserde(rename = "EXDI")]
#[cfg_attr(feature = "serde", serde(rename = "EXDI"))]
Exdi,
#[yaserde(rename = "EXHR")]
#[cfg_attr(feature = "serde", serde(rename = "EXHR"))]
Exhr,
#[yaserde(rename = "FINE")]
#[cfg_attr(feature = "serde", serde(rename = "FINE"))]
Fine,
#[yaserde(rename = "FUEL")]
#[cfg_attr(feature = "serde", serde(rename = "FUEL"))]
Fuel,
#[yaserde(rename = "GARA")]
#[cfg_attr(feature = "serde", serde(rename = "GARA"))]
Gara,
#[yaserde(rename = "GPSY")]
#[cfg_attr(feature = "serde", serde(rename = "GPSY"))]
Gpsy,
#[yaserde(rename = "INSU")]
#[cfg_attr(feature = "serde", serde(rename = "INSU"))]
Insu,
#[yaserde(rename = "LATE")]
#[cfg_attr(feature = "serde", serde(rename = "LATE"))]
Late,
#[yaserde(rename = "LIIN")]
#[cfg_attr(feature = "serde", serde(rename = "LIIN"))]
Liin,
#[yaserde(rename = "LDIN")]
#[cfg_attr(feature = "serde", serde(rename = "LDIN"))]
Ldin,
#[yaserde(rename = "MISC")]
#[cfg_attr(feature = "serde", serde(rename = "MISC"))]
Misc,
#[yaserde(rename = "NAVI")]
#[cfg_attr(feature = "serde", serde(rename = "NAVI"))]
Navi,
#[yaserde(rename = "NOSH")]
#[cfg_attr(feature = "serde", serde(rename = "NOSH"))]
Nosh,
#[yaserde(rename = "ONEW")]
#[cfg_attr(feature = "serde", serde(rename = "ONEW"))]
Onew,
#[yaserde(rename = "PARK")]
#[cfg_attr(feature = "serde", serde(rename = "PARK"))]
Park,
#[yaserde(rename = "PRIN")]
#[cfg_attr(feature = "serde", serde(rename = "PRIN"))]
Prin,
#[yaserde(rename = "PFIN")]
#[cfg_attr(feature = "serde", serde(rename = "PFIN"))]
Pfin,
#[yaserde(rename = "PHON")]
#[cfg_attr(feature = "serde", serde(rename = "PHON"))]
Phon,
#[yaserde(rename = "REGD")]
#[cfg_attr(feature = "serde", serde(rename = "REGD"))]
Regd,
#[yaserde(rename = "SMOK")]
#[cfg_attr(feature = "serde", serde(rename = "SMOK"))]
Smok,
#[yaserde(rename = "TOLL")]
#[cfg_attr(feature = "serde", serde(rename = "TOLL"))]
Toll,
#[yaserde(rename = "TOWI")]
#[cfg_attr(feature = "serde", serde(rename = "TOWI"))]
Towi,
#[yaserde(rename = "EXTR")]
#[cfg_attr(feature = "serde", serde(rename = "EXTR"))]
Extr,
#[yaserde(rename = "TRAN")]
#[cfg_attr(feature = "serde", serde(rename = "TRAN"))]
Tran,
#[yaserde(rename = "MILE")]
#[cfg_attr(feature = "serde", serde(rename = "MILE"))]
Mile,
#[yaserde(rename = "INTE")]
#[cfg_attr(feature = "serde", serde(rename = "INTE"))]
Inte,
__Unknown__(String),
}
impl Default for CarRentalServiceType3Code {
fn default() -> CarRentalServiceType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CarRentalServiceType3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct CardData14 {
#[yaserde(rename = "PAN")]
#[cfg_attr(feature = "serde", serde(rename = "PAN"))]
pub pan: Max19NumericText,
#[yaserde(rename = "CardSeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "CardSeqNb"))]
pub card_seq_nb: Min2Max3NumericText,
#[yaserde(rename = "PmtAcctRef")]
#[cfg_attr(feature = "serde", serde(rename = "PmtAcctRef"))]
pub pmt_acct_ref: Max35Text,
#[yaserde(rename = "PrtflIdr")]
#[cfg_attr(feature = "serde", serde(rename = "PrtflIdr"))]
pub prtfl_idr: Max35Text,
}
impl Validate for CardData14 {}
#[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:cain.025.001.04")]
pub enum CardDataReading5Code {
#[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,
#[yaserde(rename = "CDFL")]
#[cfg_attr(feature = "serde", serde(rename = "CDFL"))]
Cdfl,
__Unknown__(String),
}
impl Default for CardDataReading5Code {
fn default() -> CardDataReading5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CardDataReading5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ContactBusiness1 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
#[yaserde(rename = "GvnNm")]
#[cfg_attr(feature = "serde", serde(rename = "GvnNm"))]
pub gvn_nm: Max35Text,
#[yaserde(rename = "MddlNm")]
#[cfg_attr(feature = "serde", serde(rename = "MddlNm"))]
pub mddl_nm: Max35Text,
#[yaserde(rename = "LastNm")]
#[cfg_attr(feature = "serde", serde(rename = "LastNm"))]
pub last_nm: Max35Text,
#[yaserde(rename = "Phne")]
#[cfg_attr(feature = "serde", serde(rename = "Phne"))]
pub phne: PhoneNumber,
#[yaserde(rename = "PrprtyPhne")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyPhne"))]
pub prprty_phne: PhoneNumber,
#[yaserde(rename = "TollFreePhne")]
#[cfg_attr(feature = "serde", serde(rename = "TollFreePhne"))]
pub toll_free_phne: PhoneNumber,
#[yaserde(rename = "Email")]
#[cfg_attr(feature = "serde", serde(rename = "Email"))]
pub email: Max256Text,
#[yaserde(rename = "Fax")]
#[cfg_attr(feature = "serde", serde(rename = "Fax"))]
pub fax: PhoneNumber,
#[yaserde(rename = "URL")]
#[cfg_attr(feature = "serde", serde(rename = "URL"))]
pub url: Max256Text,
#[yaserde(rename = "Lang")]
#[cfg_attr(feature = "serde", serde(rename = "Lang"))]
pub lang: Iso2AlanguageCode,
}
impl Validate for ContactBusiness1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ContactBusiness2 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max105Text,
#[yaserde(rename = "GvnNm")]
#[cfg_attr(feature = "serde", serde(rename = "GvnNm"))]
pub gvn_nm: Max35Text,
#[yaserde(rename = "MddlNm")]
#[cfg_attr(feature = "serde", serde(rename = "MddlNm"))]
pub mddl_nm: Max35Text,
#[yaserde(rename = "LastNm")]
#[cfg_attr(feature = "serde", serde(rename = "LastNm"))]
pub last_nm: Max35Text,
#[yaserde(rename = "Phne")]
#[cfg_attr(feature = "serde", serde(rename = "Phne"))]
pub phne: PhoneNumber,
#[yaserde(rename = "PrprtyPhne")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyPhne"))]
pub prprty_phne: PhoneNumber,
#[yaserde(rename = "TollFreePhne")]
#[cfg_attr(feature = "serde", serde(rename = "TollFreePhne"))]
pub toll_free_phne: PhoneNumber,
#[yaserde(rename = "Email")]
#[cfg_attr(feature = "serde", serde(rename = "Email"))]
pub email: Max256Text,
#[yaserde(rename = "Fax")]
#[cfg_attr(feature = "serde", serde(rename = "Fax"))]
pub fax: PhoneNumber,
#[yaserde(rename = "URL")]
#[cfg_attr(feature = "serde", serde(rename = "URL"))]
pub url: Max256Text,
#[yaserde(rename = "Lang")]
#[cfg_attr(feature = "serde", serde(rename = "Lang"))]
pub lang: Iso2AlanguageCode,
}
impl Validate for ContactBusiness2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ContactPersonal1 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
#[yaserde(rename = "GvnNm")]
#[cfg_attr(feature = "serde", serde(rename = "GvnNm"))]
pub gvn_nm: Max35Text,
#[yaserde(rename = "MddlNm")]
#[cfg_attr(feature = "serde", serde(rename = "MddlNm"))]
pub mddl_nm: Max35Text,
#[yaserde(rename = "LastNm")]
#[cfg_attr(feature = "serde", serde(rename = "LastNm"))]
pub last_nm: Max35Text,
#[yaserde(rename = "HomePhne")]
#[cfg_attr(feature = "serde", serde(rename = "HomePhne"))]
pub home_phne: PhoneNumber,
#[yaserde(rename = "BizPhne")]
#[cfg_attr(feature = "serde", serde(rename = "BizPhne"))]
pub biz_phne: PhoneNumber,
#[yaserde(rename = "MobPhne")]
#[cfg_attr(feature = "serde", serde(rename = "MobPhne"))]
pub mob_phne: PhoneNumber,
#[yaserde(rename = "OthrPhne")]
#[cfg_attr(feature = "serde", serde(rename = "OthrPhne"))]
pub othr_phne: PhoneNumber,
#[yaserde(rename = "PrsnlEmail")]
#[cfg_attr(feature = "serde", serde(rename = "PrsnlEmail"))]
pub prsnl_email: Max256Text,
#[yaserde(rename = "BizEmail")]
#[cfg_attr(feature = "serde", serde(rename = "BizEmail"))]
pub biz_email: Max256Text,
#[yaserde(rename = "OthrEmail")]
#[cfg_attr(feature = "serde", serde(rename = "OthrEmail"))]
pub othr_email: Max256Text,
#[yaserde(rename = "HomeFax")]
#[cfg_attr(feature = "serde", serde(rename = "HomeFax"))]
pub home_fax: PhoneNumber,
#[yaserde(rename = "BizFax")]
#[cfg_attr(feature = "serde", serde(rename = "BizFax"))]
pub biz_fax: PhoneNumber,
#[yaserde(rename = "URL")]
#[cfg_attr(feature = "serde", serde(rename = "URL"))]
pub url: Max256Text,
#[yaserde(rename = "Lang")]
#[cfg_attr(feature = "serde", serde(rename = "Lang"))]
pub lang: Iso2AlanguageCode,
}
impl Validate for ContactPersonal1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ContactPersonal2 {
#[yaserde(rename = "HomePhne")]
#[cfg_attr(feature = "serde", serde(rename = "HomePhne"))]
pub home_phne: PhoneNumber,
#[yaserde(rename = "BizPhne")]
#[cfg_attr(feature = "serde", serde(rename = "BizPhne"))]
pub biz_phne: PhoneNumber,
#[yaserde(rename = "MobPhne")]
#[cfg_attr(feature = "serde", serde(rename = "MobPhne"))]
pub mob_phne: PhoneNumber,
#[yaserde(rename = "OthrPhne")]
#[cfg_attr(feature = "serde", serde(rename = "OthrPhne"))]
pub othr_phne: PhoneNumber,
#[yaserde(rename = "PrsnlEmail")]
#[cfg_attr(feature = "serde", serde(rename = "PrsnlEmail"))]
pub prsnl_email: Max256Text,
#[yaserde(rename = "BizEmail")]
#[cfg_attr(feature = "serde", serde(rename = "BizEmail"))]
pub biz_email: Max256Text,
#[yaserde(rename = "OthrEmail")]
#[cfg_attr(feature = "serde", serde(rename = "OthrEmail"))]
pub othr_email: Max256Text,
#[yaserde(rename = "HomeFax")]
#[cfg_attr(feature = "serde", serde(rename = "HomeFax"))]
pub home_fax: PhoneNumber,
#[yaserde(rename = "BizFax")]
#[cfg_attr(feature = "serde", serde(rename = "BizFax"))]
pub biz_fax: PhoneNumber,
#[yaserde(rename = "URL")]
#[cfg_attr(feature = "serde", serde(rename = "URL"))]
pub url: Max256Text,
#[yaserde(rename = "Lang")]
#[cfg_attr(feature = "serde", serde(rename = "Lang"))]
pub lang: Iso2AlanguageCode,
}
impl Validate for ContactPersonal2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ContentInformationType41 {
#[yaserde(rename = "MACData")]
#[cfg_attr(feature = "serde", serde(rename = "MACData"))]
pub mac_data: Macdata1,
#[yaserde(rename = "MAC")]
#[cfg_attr(feature = "serde", serde(rename = "MAC"))]
pub mac: Max8HexBinaryText,
}
impl Validate for ContentInformationType41 {}
#[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:cain.025.001.04")]
pub enum CorporateTaxType1Code {
#[yaserde(rename = "SMBS")]
#[cfg_attr(feature = "serde", serde(rename = "SMBS"))]
Smbs,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "CORP")]
#[cfg_attr(feature = "serde", serde(rename = "CORP"))]
Corp,
__Unknown__(String),
}
impl Default for CorporateTaxType1Code {
fn default() -> CorporateTaxType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CorporateTaxType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Credentials3 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: ExternalAuthenticationMethod1Code,
#[yaserde(rename = "OthrTp")]
#[cfg_attr(feature = "serde", serde(rename = "OthrTp"))]
pub othr_tp: Max35Text,
#[yaserde(rename = "SubTp")]
#[cfg_attr(feature = "serde", serde(rename = "SubTp"))]
pub sub_tp: Max35Text,
#[yaserde(rename = "Val")]
#[cfg_attr(feature = "serde", serde(rename = "Val"))]
pub val: Max70Text,
#[yaserde(rename = "XpryDt")]
#[cfg_attr(feature = "serde", serde(rename = "XpryDt"))]
pub xpry_dt: IsoyearMonth,
#[yaserde(rename = "Assgnr")]
#[cfg_attr(feature = "serde", serde(rename = "Assgnr"))]
pub assgnr: Authority1,
}
impl Validate for Credentials3 {}
#[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:cain.025.001.04")]
pub enum CreditDebit3Code {
#[yaserde(rename = "CRDT")]
#[cfg_attr(feature = "serde", serde(rename = "CRDT"))]
Crdt,
#[yaserde(rename = "DBIT")]
#[cfg_attr(feature = "serde", serde(rename = "DBIT"))]
Dbit,
__Unknown__(String),
}
impl Default for CreditDebit3Code {
fn default() -> CreditDebit3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CreditDebit3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Customer10 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max105Text,
#[yaserde(rename = "GvnNm")]
#[cfg_attr(feature = "serde", serde(rename = "GvnNm"))]
pub gvn_nm: Max35Text,
#[yaserde(rename = "MddlNm")]
#[cfg_attr(feature = "serde", serde(rename = "MddlNm"))]
pub mddl_nm: Max35Text,
#[yaserde(rename = "LastNm")]
#[cfg_attr(feature = "serde", serde(rename = "LastNm"))]
pub last_nm: Max35Text,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Credentials3,
#[yaserde(rename = "CstmrFileRefNb")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrFileRefNb"))]
pub cstmr_file_ref_nb: Max70Text,
#[yaserde(rename = "Age")]
#[cfg_attr(feature = "serde", serde(rename = "Age"))]
pub age: Max2NumericText,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "Ctct")]
#[cfg_attr(feature = "serde", serde(rename = "Ctct"))]
pub ctct: ContactPersonal2,
}
impl Validate for Customer10 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Customer4 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: CustomerType2Code,
#[yaserde(rename = "RefNb")]
#[cfg_attr(feature = "serde", serde(rename = "RefNb"))]
pub ref_nb: Max35Text,
#[yaserde(rename = "TaxRegnId")]
#[cfg_attr(feature = "serde", serde(rename = "TaxRegnId"))]
pub tax_regn_id: Vec<Max70Text>,
#[yaserde(rename = "AuthrsdCtctCpny")]
#[cfg_attr(feature = "serde", serde(rename = "AuthrsdCtctCpny"))]
pub authrsd_ctct_cpny: Max70Text,
#[yaserde(rename = "AuthrsdCtctNm")]
#[cfg_attr(feature = "serde", serde(rename = "AuthrsdCtctNm"))]
pub authrsd_ctct_nm: Max70Text,
#[yaserde(rename = "AuthrsdCtctPhneNb")]
#[cfg_attr(feature = "serde", serde(rename = "AuthrsdCtctPhneNb"))]
pub authrsd_ctct_phne_nb: PhoneNumber,
#[yaserde(rename = "VIPInd")]
#[cfg_attr(feature = "serde", serde(rename = "VIPInd"))]
pub vip_ind: TrueFalseIndicator,
#[yaserde(rename = "CstmrRltsh")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrRltsh"))]
pub cstmr_rltsh: Max35Text,
}
impl Validate for Customer4 {}
#[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:cain.025.001.04")]
pub enum CustomerAssigner1Code {
#[yaserde(rename = "AUTH")]
#[cfg_attr(feature = "serde", serde(rename = "AUTH"))]
Auth,
#[yaserde(rename = "CRCY")]
#[cfg_attr(feature = "serde", serde(rename = "CRCY"))]
Crcy,
#[yaserde(rename = "CUST")]
#[cfg_attr(feature = "serde", serde(rename = "CUST"))]
Cust,
#[yaserde(rename = "ONFL")]
#[cfg_attr(feature = "serde", serde(rename = "ONFL"))]
Onfl,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "TRAY")]
#[cfg_attr(feature = "serde", serde(rename = "TRAY"))]
Tray,
__Unknown__(String),
}
impl Default for CustomerAssigner1Code {
fn default() -> CustomerAssigner1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CustomerAssigner1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct CustomerReference1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Dtl")]
#[cfg_attr(feature = "serde", serde(rename = "Dtl"))]
pub dtl: Max70Text,
}
impl Validate for CustomerReference1 {}
#[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:cain.025.001.04")]
pub enum CustomerType2Code {
#[yaserde(rename = "CSMR")]
#[cfg_attr(feature = "serde", serde(rename = "CSMR"))]
Csmr,
#[yaserde(rename = "CPNY")]
#[cfg_attr(feature = "serde", serde(rename = "CPNY"))]
Cpny,
__Unknown__(String),
}
impl Default for CustomerType2Code {
fn default() -> CustomerType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for CustomerType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct DateTime2 {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
}
impl Validate for DateTime2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct DecimalNumber (pub String);
crate::simple_type!(DecimalNumber);
impl Validate for DecimalNumber {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct DepartureOrArrival1 {
#[yaserde(rename = "Lctn")]
#[cfg_attr(feature = "serde", serde(rename = "Lctn"))]
pub lctn: Max70Text,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max256Text,
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
}
impl Validate for DepartureOrArrival1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct DepartureOrArrival2 {
#[yaserde(rename = "CrrierCd")]
#[cfg_attr(feature = "serde", serde(rename = "CrrierCd"))]
pub crrier_cd: Max35Text,
#[yaserde(rename = "RouteNb")]
#[cfg_attr(feature = "serde", serde(rename = "RouteNb"))]
pub route_nb: Max35NumericText,
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
}
impl Validate for DepartureOrArrival2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct DestinationData1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max11NumericText,
#[yaserde(rename = "BizId")]
#[cfg_attr(feature = "serde", serde(rename = "BizId"))]
pub biz_id: Max15AlphaNumericText,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Iso3NumericCountryCode,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max35Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max99Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LclData")]
#[cfg_attr(feature = "serde", serde(rename = "LclData"))]
pub lcl_data: Vec<LocalData20>,
}
impl Validate for DestinationData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Document {
#[yaserde(rename = "AdddmInitn")]
#[cfg_attr(feature = "serde", serde(rename = "AdddmInitn"))]
pub adddm_initn: AddendumInitiationV04,
}
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:cain.025.001.04")]
pub struct DriverInParty4 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max105Text,
#[yaserde(rename = "GvnNm")]
#[cfg_attr(feature = "serde", serde(rename = "GvnNm"))]
pub gvn_nm: Max35Text,
#[yaserde(rename = "MddlNm")]
#[cfg_attr(feature = "serde", serde(rename = "MddlNm"))]
pub mddl_nm: Max35Text,
#[yaserde(rename = "LastNm")]
#[cfg_attr(feature = "serde", serde(rename = "LastNm"))]
pub last_nm: Max35Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "Ctct")]
#[cfg_attr(feature = "serde", serde(rename = "Ctct"))]
pub ctct: ContactPersonal2,
#[yaserde(rename = "DtOfBirth")]
#[cfg_attr(feature = "serde", serde(rename = "DtOfBirth"))]
pub dt_of_birth: Isodate,
#[yaserde(rename = "Age")]
#[cfg_attr(feature = "serde", serde(rename = "Age"))]
pub age: Max2NumericText,
#[yaserde(rename = "DrvrCrdntl")]
#[cfg_attr(feature = "serde", serde(rename = "DrvrCrdntl"))]
pub drvr_crdntl: Vec<TravelDocument3>,
#[yaserde(rename = "LicTp")]
#[cfg_attr(feature = "serde", serde(rename = "LicTp"))]
pub lic_tp: Max70Text,
#[yaserde(rename = "LicForm")]
#[cfg_attr(feature = "serde", serde(rename = "LicForm"))]
pub lic_form: PresentationMedium2Code,
#[yaserde(rename = "LicId")]
#[cfg_attr(feature = "serde", serde(rename = "LicId"))]
pub lic_id: Max70Text,
#[yaserde(rename = "LicAssgnr")]
#[cfg_attr(feature = "serde", serde(rename = "LicAssgnr"))]
pub lic_assgnr: LegalStructure1Code,
#[yaserde(rename = "LicIssncDt")]
#[cfg_attr(feature = "serde", serde(rename = "LicIssncDt"))]
pub lic_issnc_dt: Isodate,
#[yaserde(rename = "LicXprtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "LicXprtnDt"))]
pub lic_xprtn_dt: Isodate,
#[yaserde(rename = "LicCtry")]
#[cfg_attr(feature = "serde", serde(rename = "LicCtry"))]
pub lic_ctry: Isomax3ACountryCode,
#[yaserde(rename = "LicCtrySubDvsnMjr")]
#[cfg_attr(feature = "serde", serde(rename = "LicCtrySubDvsnMjr"))]
pub lic_ctry_sub_dvsn_mjr: IsocountrySubDivisionCode,
#[yaserde(rename = "LicCtrySubDvsnMnr")]
#[cfg_attr(feature = "serde", serde(rename = "LicCtrySubDvsnMnr"))]
pub lic_ctry_sub_dvsn_mnr: IsocountrySubDivisionCode,
#[yaserde(rename = "LicOthrAuthrty")]
#[cfg_attr(feature = "serde", serde(rename = "LicOthrAuthrty"))]
pub lic_othr_authrty: Max16Text,
}
impl Validate for DriverInParty4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct DriverOrVehicleCardData1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max20Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for DriverOrVehicleCardData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct EncryptedData2 {
#[yaserde(rename = "Ctrl")]
#[cfg_attr(feature = "serde", serde(rename = "Ctrl"))]
pub ctrl: Exact1HexBinaryText,
#[yaserde(rename = "KeySetIdr")]
#[cfg_attr(feature = "serde", serde(rename = "KeySetIdr"))]
pub key_set_idr: Max8NumericText,
#[yaserde(rename = "DrvdInf")]
#[cfg_attr(feature = "serde", serde(rename = "DrvdInf"))]
pub drvd_inf: Max32HexBinaryText,
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Max2NumericText,
#[yaserde(rename = "KeyLngth")]
#[cfg_attr(feature = "serde", serde(rename = "KeyLngth"))]
pub key_lngth: Max4NumericText,
#[yaserde(rename = "KeyPrtcn")]
#[cfg_attr(feature = "serde", serde(rename = "KeyPrtcn"))]
pub key_prtcn: Max2NumericText,
#[yaserde(rename = "KeyIndx")]
#[cfg_attr(feature = "serde", serde(rename = "KeyIndx"))]
pub key_indx: Max5NumericText,
#[yaserde(rename = "PddgMtd")]
#[cfg_attr(feature = "serde", serde(rename = "PddgMtd"))]
pub pddg_mtd: Max2NumericText,
#[yaserde(rename = "NcrptdFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptdFrmt"))]
pub ncrptd_frmt: Max2NumericText,
#[yaserde(rename = "NcrptdElmt")]
#[cfg_attr(feature = "serde", serde(rename = "NcrptdElmt"))]
pub ncrptd_elmt: Vec<EncryptedDataElement2>,
}
impl Validate for EncryptedData2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct EncryptedData2Choice {
#[yaserde(rename = "Binry")]
#[cfg_attr(feature = "serde", serde(rename = "Binry"))]
pub binry: Option<Max100KBinary>,
#[yaserde(rename = "HexBinry")]
#[cfg_attr(feature = "serde", serde(rename = "HexBinry"))]
pub hex_binry: Option<Max9999HexBinaryText>,
}
impl Validate for EncryptedData2Choice {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct EncryptedDataElement2 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "Data")]
#[cfg_attr(feature = "serde", serde(rename = "Data"))]
pub data: EncryptedData2Choice,
#[yaserde(rename = "ClearTxtFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "ClearTxtFrmt"))]
pub clear_txt_frmt: EncryptedDataFormat1Code,
#[yaserde(rename = "OthrClearTxtFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "OthrClearTxtFrmt"))]
pub othr_clear_txt_frmt: Max35Text,
}
impl Validate for EncryptedDataElement2 {}
#[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:cain.025.001.04")]
pub enum EncryptedDataFormat1Code {
#[yaserde(rename = "ASCI")]
#[cfg_attr(feature = "serde", serde(rename = "ASCI"))]
Asci,
#[yaserde(rename = "BINF")]
#[cfg_attr(feature = "serde", serde(rename = "BINF"))]
Binf,
#[yaserde(rename = "EBCD")]
#[cfg_attr(feature = "serde", serde(rename = "EBCD"))]
Ebcd,
#[yaserde(rename = "HEXF")]
#[cfg_attr(feature = "serde", serde(rename = "HEXF"))]
Hexf,
#[yaserde(rename = "OTHN")]
#[cfg_attr(feature = "serde", serde(rename = "OTHN"))]
Othn,
#[yaserde(rename = "OTHP")]
#[cfg_attr(feature = "serde", serde(rename = "OTHP"))]
Othp,
__Unknown__(String),
}
impl Default for EncryptedDataFormat1Code {
fn default() -> EncryptedDataFormat1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for EncryptedDataFormat1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact12Text (pub String);
crate::simple_type!(Exact12Text);
impl Validate for Exact12Text {
fn validate(&self) -> Result<(), String> {
if self.0.len() != 12 {
return Err(format!("Length validation error. \nExpected: 0 length == 12 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact15Text (pub String);
crate::simple_type!(Exact15Text);
impl Validate for Exact15Text {
fn validate(&self) -> Result<(), String> {
if self.0.len() != 15 {
return Err(format!("Length validation error. \nExpected: 0 length == 15 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact1HexBinaryText (pub String);
crate::simple_type!(Exact1HexBinaryText);
impl Validate for Exact1HexBinaryText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact1Text (pub String);
crate::simple_type!(Exact1Text);
impl Validate for Exact1Text {
fn validate(&self) -> Result<(), String> {
if self.0.len() != 1 {
return Err(format!("Length validation error. \nExpected: 0 length == 1 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact2NumericText (pub String);
crate::simple_type!(Exact2NumericText);
impl Validate for Exact2NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Exact6AlphaNumericText (pub String);
crate::simple_type!(Exact6AlphaNumericText);
impl Validate for Exact6AlphaNumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ExternalAuthenticationMethod1Code (pub String);
crate::simple_type!(ExternalAuthenticationMethod1Code);
impl Validate for ExternalAuthenticationMethod1Code {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 4 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 4 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct ExternalMessageFunction1Code (pub String);
crate::simple_type!(ExternalMessageFunction1Code);
impl Validate for ExternalMessageFunction1Code {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 4 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 4 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct FleetData7 {
#[yaserde(rename = "Drvr")]
#[cfg_attr(feature = "serde", serde(rename = "Drvr"))]
pub drvr: FleetDriverData2,
#[yaserde(rename = "Vhcl")]
#[cfg_attr(feature = "serde", serde(rename = "Vhcl"))]
pub vhcl: FleetVehicleData1,
#[yaserde(rename = "DrvrOrVhclCard")]
#[cfg_attr(feature = "serde", serde(rename = "DrvrOrVhclCard"))]
pub drvr_or_vhcl_card: DriverOrVehicleCardData1,
#[yaserde(rename = "CardFuelPrmptCd")]
#[cfg_attr(feature = "serde", serde(rename = "CardFuelPrmptCd"))]
pub card_fuel_prmpt_cd: Max1Number,
#[yaserde(rename = "AgtFuelPrmptCd")]
#[cfg_attr(feature = "serde", serde(rename = "AgtFuelPrmptCd"))]
pub agt_fuel_prmpt_cd: Max35Text,
#[yaserde(rename = "TripNb")]
#[cfg_attr(feature = "serde", serde(rename = "TripNb"))]
pub trip_nb: Max35Text,
#[yaserde(rename = "TripJobNb")]
#[cfg_attr(feature = "serde", serde(rename = "TripJobNb"))]
pub trip_job_nb: Max10Text,
#[yaserde(rename = "TripWorkOrdr")]
#[cfg_attr(feature = "serde", serde(rename = "TripWorkOrdr"))]
pub trip_work_ordr: Max70Text,
#[yaserde(rename = "TripInvcNb")]
#[cfg_attr(feature = "serde", serde(rename = "TripInvcNb"))]
pub trip_invc_nb: Max70Text,
#[yaserde(rename = "TripBllgId")]
#[cfg_attr(feature = "serde", serde(rename = "TripBllgId"))]
pub trip_bllg_id: Max70Text,
#[yaserde(rename = "TripCtrlNb")]
#[cfg_attr(feature = "serde", serde(rename = "TripCtrlNb"))]
pub trip_ctrl_nb: Max35Text,
#[yaserde(rename = "TripDlvryTcktNb")]
#[cfg_attr(feature = "serde", serde(rename = "TripDlvryTcktNb"))]
pub trip_dlvry_tckt_nb: Max35Text,
#[yaserde(rename = "LclAmnty")]
#[cfg_attr(feature = "serde", serde(rename = "LclAmnty"))]
pub lcl_amnty: Vec<LocalAmenity2>,
#[yaserde(rename = "TxRltdData")]
#[cfg_attr(feature = "serde", serde(rename = "TxRltdData"))]
pub tx_rltd_data: Vec<FleetTransactionDetail2>,
#[yaserde(rename = "AddtlNtrdData")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlNtrdData"))]
pub addtl_ntrd_data: AdditionalEnteredFleetData1,
#[yaserde(rename = "DscntMtd")]
#[cfg_attr(feature = "serde", serde(rename = "DscntMtd"))]
pub dscnt_mtd: Max4AlphaNumericText,
#[yaserde(rename = "DscntNtty")]
#[cfg_attr(feature = "serde", serde(rename = "DscntNtty"))]
pub dscnt_ntty: AticapartyType1Code,
#[yaserde(rename = "DscntPlanId")]
#[cfg_attr(feature = "serde", serde(rename = "DscntPlanId"))]
pub dscnt_plan_id: Max35Text,
#[yaserde(rename = "PurchsRstrctnInd")]
#[cfg_attr(feature = "serde", serde(rename = "PurchsRstrctnInd"))]
pub purchs_rstrctn_ind: Exact1Text,
#[yaserde(rename = "LineItm")]
#[cfg_attr(feature = "serde", serde(rename = "LineItm"))]
pub line_itm: Vec<FleetLineItem7>,
}
impl Validate for FleetData7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct FleetDriverData2 {
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max105Text,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max70Text,
#[yaserde(rename = "LicTp")]
#[cfg_attr(feature = "serde", serde(rename = "LicTp"))]
pub lic_tp: Max70Text,
#[yaserde(rename = "LicForm")]
#[cfg_attr(feature = "serde", serde(rename = "LicForm"))]
pub lic_form: PresentationMedium2Code,
#[yaserde(rename = "LicId")]
#[cfg_attr(feature = "serde", serde(rename = "LicId"))]
pub lic_id: Max70Text,
#[yaserde(rename = "LicAssgnr")]
#[cfg_attr(feature = "serde", serde(rename = "LicAssgnr"))]
pub lic_assgnr: LegalStructure1Code,
#[yaserde(rename = "LicIssncDt")]
#[cfg_attr(feature = "serde", serde(rename = "LicIssncDt"))]
pub lic_issnc_dt: Isodate,
#[yaserde(rename = "LicXprtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "LicXprtnDt"))]
pub lic_xprtn_dt: Isodate,
#[yaserde(rename = "LicCtry")]
#[cfg_attr(feature = "serde", serde(rename = "LicCtry"))]
pub lic_ctry: Isomax3ACountryCode,
#[yaserde(rename = "LicCtrySubDvsnMjr")]
#[cfg_attr(feature = "serde", serde(rename = "LicCtrySubDvsnMjr"))]
pub lic_ctry_sub_dvsn_mjr: IsocountrySubDivisionCode,
#[yaserde(rename = "LicCtrySubDvsnMnr")]
#[cfg_attr(feature = "serde", serde(rename = "LicCtrySubDvsnMnr"))]
pub lic_ctry_sub_dvsn_mnr: IsocountrySubDivisionCode,
#[yaserde(rename = "LicOthrAuthrty")]
#[cfg_attr(feature = "serde", serde(rename = "LicOthrAuthrty"))]
pub lic_othr_authrty: Max16Text,
#[yaserde(rename = "Mplyr")]
#[cfg_attr(feature = "serde", serde(rename = "Mplyr"))]
pub mplyr: Max70Text,
#[yaserde(rename = "MplyeeId")]
#[cfg_attr(feature = "serde", serde(rename = "MplyeeId"))]
pub mplyee_id: Max70Text,
#[yaserde(rename = "DeptNb")]
#[cfg_attr(feature = "serde", serde(rename = "DeptNb"))]
pub dept_nb: Max35Text,
#[yaserde(rename = "AddtlId")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlId"))]
pub addtl_id: Vec<TravelDocument3>,
#[yaserde(rename = "DtOfBirth")]
#[cfg_attr(feature = "serde", serde(rename = "DtOfBirth"))]
pub dt_of_birth: Isodate,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for FleetDriverData2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct FleetLineItem7 {
#[yaserde(rename = "Fuel")]
#[cfg_attr(feature = "serde", serde(rename = "Fuel"))]
pub fuel: TrueFalseIndicator,
#[yaserde(rename = "SvcTp")]
#[cfg_attr(feature = "serde", serde(rename = "SvcTp"))]
pub svc_tp: FleetServiceType1Code,
#[yaserde(rename = "FuelBrndCd")]
#[cfg_attr(feature = "serde", serde(rename = "FuelBrndCd"))]
pub fuel_brnd_cd: Max4Text,
#[yaserde(rename = "PdctCd")]
#[cfg_attr(feature = "serde", serde(rename = "PdctCd"))]
pub pdct_cd: Max4Text,
#[yaserde(rename = "PdctCtgy")]
#[cfg_attr(feature = "serde", serde(rename = "PdctCtgy"))]
pub pdct_ctgy: Max35Text,
#[yaserde(rename = "PdctQlfr")]
#[cfg_attr(feature = "serde", serde(rename = "PdctQlfr"))]
pub pdct_qlfr: Max6Text,
#[yaserde(rename = "PdctCdAssgnr")]
#[cfg_attr(feature = "serde", serde(rename = "PdctCdAssgnr"))]
pub pdct_cd_assgnr: Max35Text,
#[yaserde(rename = "UnitPricTax")]
#[cfg_attr(feature = "serde", serde(rename = "UnitPricTax"))]
pub unit_pric_tax: TrueFalseIndicator,
#[yaserde(rename = "UnitPric")]
#[cfg_attr(feature = "serde", serde(rename = "UnitPric"))]
pub unit_pric: ImpliedCurrencyAndAmount,
#[yaserde(rename = "UnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "UnitOfMeasr"))]
pub unit_of_measr: UnitOfMeasure14Code,
#[yaserde(rename = "PctgDscntRate")]
#[cfg_attr(feature = "serde", serde(rename = "PctgDscntRate"))]
pub pctg_dscnt_rate: PercentageRate,
#[yaserde(rename = "PerUnitDscntRate")]
#[cfg_attr(feature = "serde", serde(rename = "PerUnitDscntRate"))]
pub per_unit_dscnt_rate: ImpliedCurrencyAndAmount,
#[yaserde(rename = "FlatDscntRate")]
#[cfg_attr(feature = "serde", serde(rename = "FlatDscntRate"))]
pub flat_dscnt_rate: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CostPlusUnitDscnt")]
#[cfg_attr(feature = "serde", serde(rename = "CostPlusUnitDscnt"))]
pub cost_plus_unit_dscnt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CostPlusUnitDscntSgn")]
#[cfg_attr(feature = "serde", serde(rename = "CostPlusUnitDscntSgn"))]
pub cost_plus_unit_dscnt_sgn: CreditDebit3Code,
#[yaserde(rename = "CostPlusUnitPric")]
#[cfg_attr(feature = "serde", serde(rename = "CostPlusUnitPric"))]
pub cost_plus_unit_pric: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TtlTmPlugdIn")]
#[cfg_attr(feature = "serde", serde(rename = "TtlTmPlugdIn"))]
pub ttl_tm_plugd_in: Isotime,
#[yaserde(rename = "TtlTmChrgg")]
#[cfg_attr(feature = "serde", serde(rename = "TtlTmChrgg"))]
pub ttl_tm_chrgg: Isotime,
#[yaserde(rename = "ChrggStartTm")]
#[cfg_attr(feature = "serde", serde(rename = "ChrggStartTm"))]
pub chrgg_start_tm: Isotime,
#[yaserde(rename = "ChrggCmpltnTm")]
#[cfg_attr(feature = "serde", serde(rename = "ChrggCmpltnTm"))]
pub chrgg_cmpltn_tm: Isotime,
#[yaserde(rename = "PdctQty")]
#[cfg_attr(feature = "serde", serde(rename = "PdctQty"))]
pub pdct_qty: DecimalNumber,
#[yaserde(rename = "DscntAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DscntAmt"))]
pub dscnt_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "NonTaxbl")]
#[cfg_attr(feature = "serde", serde(rename = "NonTaxbl"))]
pub non_taxbl: TrueFalseIndicator,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "TtlAmtExclgTax")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmtExclgTax"))]
pub ttl_amt_exclg_tax: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TtlAmtInclgTax")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmtInclgTax"))]
pub ttl_amt_inclg_tax: ImpliedCurrencyAndAmount,
#[yaserde(rename = "NetAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NetAmt"))]
pub net_amt: ImpliedCurrencyAndAmount,
}
impl Validate for FleetLineItem7 {}
#[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:cain.025.001.04")]
pub enum FleetPurchaseType1Code {
#[yaserde(rename = "FUEL")]
#[cfg_attr(feature = "serde", serde(rename = "FUEL"))]
Fuel,
#[yaserde(rename = "NONF")]
#[cfg_attr(feature = "serde", serde(rename = "NONF"))]
Nonf,
#[yaserde(rename = "FANF")]
#[cfg_attr(feature = "serde", serde(rename = "FANF"))]
Fanf,
__Unknown__(String),
}
impl Default for FleetPurchaseType1Code {
fn default() -> FleetPurchaseType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FleetPurchaseType1Code {}
#[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:cain.025.001.04")]
pub enum FleetServiceType1Code {
#[yaserde(rename = "SLSV")]
#[cfg_attr(feature = "serde", serde(rename = "SLSV"))]
Slsv,
#[yaserde(rename = "HSDI")]
#[cfg_attr(feature = "serde", serde(rename = "HSDI"))]
Hsdi,
#[yaserde(rename = "FLSV")]
#[cfg_attr(feature = "serde", serde(rename = "FLSV"))]
Flsv,
__Unknown__(String),
}
impl Default for FleetServiceType1Code {
fn default() -> FleetServiceType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for FleetServiceType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct FleetTransactionDetail2 {
#[yaserde(rename = "PurchsTp")]
#[cfg_attr(feature = "serde", serde(rename = "PurchsTp"))]
pub purchs_tp: FleetPurchaseType1Code,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "DscntTtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DscntTtlAmt"))]
pub dscnt_ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "DscntTtlFuelAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DscntTtlFuelAmt"))]
pub dscnt_ttl_fuel_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "DscntTtlNonFuelAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DscntTtlNonFuelAmt"))]
pub dscnt_ttl_non_fuel_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TaxTtl")]
#[cfg_attr(feature = "serde", serde(rename = "TaxTtl"))]
pub tax_ttl: Vec<Tax44>,
}
impl Validate for FleetTransactionDetail2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct FleetVehicleData1 {
#[yaserde(rename = "Nb")]
#[cfg_attr(feature = "serde", serde(rename = "Nb"))]
pub nb: Max35NumericText,
#[yaserde(rename = "IdNb")]
#[cfg_attr(feature = "serde", serde(rename = "IdNb"))]
pub id_nb: Max35NumericText,
#[yaserde(rename = "FleetNb")]
#[cfg_attr(feature = "serde", serde(rename = "FleetNb"))]
pub fleet_nb: Max10Text,
#[yaserde(rename = "SubFleetNb")]
#[cfg_attr(feature = "serde", serde(rename = "SubFleetNb"))]
pub sub_fleet_nb: Max35Text,
#[yaserde(rename = "UnitNb")]
#[cfg_attr(feature = "serde", serde(rename = "UnitNb"))]
pub unit_nb: Max35NumericText,
#[yaserde(rename = "TrlrNb")]
#[cfg_attr(feature = "serde", serde(rename = "TrlrNb"))]
pub trlr_nb: Max35NumericText,
#[yaserde(rename = "Tag")]
#[cfg_attr(feature = "serde", serde(rename = "Tag"))]
pub tag: Max35Text,
#[yaserde(rename = "TagNtryMd")]
#[cfg_attr(feature = "serde", serde(rename = "TagNtryMd"))]
pub tag_ntry_md: CardDataReading5Code,
#[yaserde(rename = "Rplcmnt")]
#[cfg_attr(feature = "serde", serde(rename = "Rplcmnt"))]
pub rplcmnt: TrueFalseIndicator,
#[yaserde(rename = "Odmtr")]
#[cfg_attr(feature = "serde", serde(rename = "Odmtr"))]
pub odmtr: DecimalNumber,
#[yaserde(rename = "Hbmtr")]
#[cfg_attr(feature = "serde", serde(rename = "Hbmtr"))]
pub hbmtr: DecimalNumber,
#[yaserde(rename = "MntncId")]
#[cfg_attr(feature = "serde", serde(rename = "MntncId"))]
pub mntnc_id: Max35Text,
#[yaserde(rename = "OnBrdDgnstcs")]
#[cfg_attr(feature = "serde", serde(rename = "OnBrdDgnstcs"))]
pub on_brd_dgnstcs: OnBoardDiagnostics1,
#[yaserde(rename = "AddtlData")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlData"))]
pub addtl_data: Vec<Vehicle2>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for FleetVehicleData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct GeographicPointInDecimalDegreesText (pub String);
crate::simple_type!(GeographicPointInDecimalDegreesText);
impl Validate for GeographicPointInDecimalDegreesText {
fn validate(&self) -> Result<(), String> {
if self.0.len() > 27 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 27 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Header72 {
#[yaserde(rename = "MsgFctn")]
#[cfg_attr(feature = "serde", serde(rename = "MsgFctn"))]
pub msg_fctn: ExternalMessageFunction1Code,
#[yaserde(rename = "PrtcolVrsn")]
#[cfg_attr(feature = "serde", serde(rename = "PrtcolVrsn"))]
pub prtcol_vrsn: Max2048Text,
#[yaserde(rename = "XchgId")]
#[cfg_attr(feature = "serde", serde(rename = "XchgId"))]
pub xchg_id: Max35Text,
#[yaserde(rename = "ReTrnsmssnCntr")]
#[cfg_attr(feature = "serde", serde(rename = "ReTrnsmssnCntr"))]
pub re_trnsmssn_cntr: Max3NumericText,
#[yaserde(rename = "CreDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "CreDtTm"))]
pub cre_dt_tm: IsodateTime,
#[yaserde(rename = "ColltnId")]
#[cfg_attr(feature = "serde", serde(rename = "ColltnId"))]
pub colltn_id: Max35Text,
#[yaserde(rename = "BtchId")]
#[cfg_attr(feature = "serde", serde(rename = "BtchId"))]
pub btch_id: Max35Text,
#[yaserde(rename = "MsgSeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "MsgSeqNb"))]
pub msg_seq_nb: Max15NumericText,
#[yaserde(rename = "MsgChcksmInptVal")]
#[cfg_attr(feature = "serde", serde(rename = "MsgChcksmInptVal"))]
pub msg_chcksm_inpt_val: Max140Binary,
#[yaserde(rename = "InitgPtyId")]
#[cfg_attr(feature = "serde", serde(rename = "InitgPtyId"))]
pub initg_pty_id: Max35Text,
#[yaserde(rename = "RcptPtyId")]
#[cfg_attr(feature = "serde", serde(rename = "RcptPtyId"))]
pub rcpt_pty_id: Max35Text,
#[yaserde(rename = "TracData")]
#[cfg_attr(feature = "serde", serde(rename = "TracData"))]
pub trac_data: Max70Text,
}
impl Validate for Header72 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct HiredVehicle4 {
#[yaserde(rename = "CpnyTp")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyTp"))]
pub cpny_tp: Max35Text,
#[yaserde(rename = "CpnyNm")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyNm"))]
pub cpny_nm: Max70Text,
#[yaserde(rename = "TpOfVhcl")]
#[cfg_attr(feature = "serde", serde(rename = "TpOfVhcl"))]
pub tp_of_vhcl: Max35Text,
#[yaserde(rename = "VhclId")]
#[cfg_attr(feature = "serde", serde(rename = "VhclId"))]
pub vhcl_id: Max35Text,
#[yaserde(rename = "DrvrId")]
#[cfg_attr(feature = "serde", serde(rename = "DrvrId"))]
pub drvr_id: Max35Text,
#[yaserde(rename = "DrvrTaxId")]
#[cfg_attr(feature = "serde", serde(rename = "DrvrTaxId"))]
pub drvr_tax_id: Max35Text,
#[yaserde(rename = "DstnNmAndLctn")]
#[cfg_attr(feature = "serde", serde(rename = "DstnNmAndLctn"))]
pub dstn_nm_and_lctn: Max99Text,
#[yaserde(rename = "DstnAdr")]
#[cfg_attr(feature = "serde", serde(rename = "DstnAdr"))]
pub dstn_adr: Address4,
}
impl Validate for HiredVehicle4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iso2AlanguageCode (pub String);
crate::simple_type!(Iso2AlanguageCode);
impl Validate for Iso2AlanguageCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iso3NumericCountryCode (pub String);
crate::simple_type!(Iso3NumericCountryCode);
impl Validate for Iso3NumericCountryCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iso3NumericCurrencyCode (pub String);
crate::simple_type!(Iso3NumericCurrencyCode);
impl Validate for Iso3NumericCurrencyCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iso8583FeeTypeCode (pub String);
crate::simple_type!(Iso8583FeeTypeCode);
impl Validate for Iso8583FeeTypeCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iso8583ResponseCode (pub String);
crate::simple_type!(Iso8583ResponseCode);
impl Validate for Iso8583ResponseCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Iso8583TransactionTypeCode (pub String);
crate::simple_type!(Iso8583TransactionTypeCode);
impl Validate for Iso8583TransactionTypeCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct IsocountrySubDivisionCode (pub String);
crate::simple_type!(IsocountrySubDivisionCode);
impl Validate for IsocountrySubDivisionCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isodate (pub String);
crate::simple_type!(Isodate);
impl Validate for Isodate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct IsodateTime (pub String);
crate::simple_type!(IsodateTime);
impl Validate for IsodateTime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isomax3ACountryCode (pub String);
crate::simple_type!(Isomax3ACountryCode);
impl Validate for Isomax3ACountryCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isomax3ALanguageCode (pub String);
crate::simple_type!(Isomax3ALanguageCode);
impl Validate for Isomax3ALanguageCode {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Isotime (pub String);
crate::simple_type!(Isotime);
impl Validate for Isotime {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct IsoyearMonth (pub String);
crate::simple_type!(IsoyearMonth);
impl Validate for IsoyearMonth {}
#[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:cain.025.001.04")]
pub struct Invoice4 {
#[yaserde(rename = "Nb")]
#[cfg_attr(feature = "serde", serde(rename = "Nb"))]
pub nb: Max70Text,
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "CreDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "CreDtTm"))]
pub cre_dt_tm: IsodateTime,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "SellrNm")]
#[cfg_attr(feature = "serde", serde(rename = "SellrNm"))]
pub sellr_nm: Max105Text,
#[yaserde(rename = "SellrId")]
#[cfg_attr(feature = "serde", serde(rename = "SellrId"))]
pub sellr_id: Max35Text,
#[yaserde(rename = "SellrBizNm")]
#[cfg_attr(feature = "serde", serde(rename = "SellrBizNm"))]
pub sellr_biz_nm: Max35Text,
#[yaserde(rename = "SellrLglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "SellrLglCorpNm"))]
pub sellr_lgl_corp_nm: Max99Text,
#[yaserde(rename = "SellrLclData")]
#[cfg_attr(feature = "serde", serde(rename = "SellrLclData"))]
pub sellr_lcl_data: Vec<LocalData20>,
#[yaserde(rename = "SellrAdr")]
#[cfg_attr(feature = "serde", serde(rename = "SellrAdr"))]
pub sellr_adr: Address4,
#[yaserde(rename = "SellrCtct")]
#[cfg_attr(feature = "serde", serde(rename = "SellrCtct"))]
pub sellr_ctct: ContactBusiness1,
#[yaserde(rename = "SellrTaxRegnId")]
#[cfg_attr(feature = "serde", serde(rename = "SellrTaxRegnId"))]
pub sellr_tax_regn_id: Max70Text,
#[yaserde(rename = "SellrAddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "SellrAddtlInf"))]
pub sellr_addtl_inf: Max1000Text,
#[yaserde(rename = "BuyrNm")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrNm"))]
pub buyr_nm: Max105Text,
#[yaserde(rename = "BuyrId")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrId"))]
pub buyr_id: Max35Text,
#[yaserde(rename = "BuyrBizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrBizNm"))]
pub buyr_biz_nm: Max35Text,
#[yaserde(rename = "BuyrLglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrLglCorpNm"))]
pub buyr_lgl_corp_nm: Max99Text,
#[yaserde(rename = "BuyrLclData")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrLclData"))]
pub buyr_lcl_data: Vec<LocalData20>,
#[yaserde(rename = "BuyrAdr")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrAdr"))]
pub buyr_adr: Address4,
#[yaserde(rename = "BuyrCtct")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrCtct"))]
pub buyr_ctct: ContactBusiness1,
#[yaserde(rename = "BuyrTaxRegnId")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrTaxRegnId"))]
pub buyr_tax_regn_id: Max70Text,
#[yaserde(rename = "BuyrAddtlInf")]
#[cfg_attr(feature = "serde", serde(rename = "BuyrAddtlInf"))]
pub buyr_addtl_inf: Max1000Text,
#[yaserde(rename = "FrghtAmt")]
#[cfg_attr(feature = "serde", serde(rename = "FrghtAmt"))]
pub frght_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TaxTtl")]
#[cfg_attr(feature = "serde", serde(rename = "TaxTtl"))]
pub tax_ttl: Vec<Tax44>,
#[yaserde(rename = "TaxRclmMtd")]
#[cfg_attr(feature = "serde", serde(rename = "TaxRclmMtd"))]
pub tax_rclm_mtd: TaxReclaimMethod1Code,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LineItm")]
#[cfg_attr(feature = "serde", serde(rename = "LineItm"))]
pub line_itm: Vec<InvoiceLineItem4>,
}
impl Validate for Invoice4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct InvoiceLineItem4 {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "OrdrDt")]
#[cfg_attr(feature = "serde", serde(rename = "OrdrDt"))]
pub ordr_dt: Isodate,
#[yaserde(rename = "CtrctNb")]
#[cfg_attr(feature = "serde", serde(rename = "CtrctNb"))]
pub ctrct_nb: Max70Text,
#[yaserde(rename = "ShppgDt")]
#[cfg_attr(feature = "serde", serde(rename = "ShppgDt"))]
pub shppg_dt: Isodate,
#[yaserde(rename = "Rbllg")]
#[cfg_attr(feature = "serde", serde(rename = "Rbllg"))]
pub rbllg: TrueFalseIndicator,
#[yaserde(rename = "MdclSvcs")]
#[cfg_attr(feature = "serde", serde(rename = "MdclSvcs"))]
pub mdcl_svcs: TrueFalseIndicator,
#[yaserde(rename = "ShipToIndstryCd")]
#[cfg_attr(feature = "serde", serde(rename = "ShipToIndstryCd"))]
pub ship_to_indstry_cd: Max50Text,
#[yaserde(rename = "PdctCd")]
#[cfg_attr(feature = "serde", serde(rename = "PdctCd"))]
pub pdct_cd: Max70Text,
#[yaserde(rename = "PdctQlfr")]
#[cfg_attr(feature = "serde", serde(rename = "PdctQlfr"))]
pub pdct_qlfr: Max35Text,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max256Text,
#[yaserde(rename = "TpOfSpply")]
#[cfg_attr(feature = "serde", serde(rename = "TpOfSpply"))]
pub tp_of_spply: Max10Text,
#[yaserde(rename = "UnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "UnitOfMeasr"))]
pub unit_of_measr: UnitOfMeasure1Code,
#[yaserde(rename = "OthrUnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "OthrUnitOfMeasr"))]
pub othr_unit_of_measr: Max35Text,
#[yaserde(rename = "UnitPric")]
#[cfg_attr(feature = "serde", serde(rename = "UnitPric"))]
pub unit_pric: ImpliedCurrencyAndAmount,
#[yaserde(rename = "PdctQty")]
#[cfg_attr(feature = "serde", serde(rename = "PdctQty"))]
pub pdct_qty: DecimalNumber,
#[yaserde(rename = "AdjstmntAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AdjstmntAmt"))]
pub adjstmnt_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "AdjstmntCdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "AdjstmntCdtDbt"))]
pub adjstmnt_cdt_dbt: CreditDebit3Code,
#[yaserde(rename = "AdjstmntRsn")]
#[cfg_attr(feature = "serde", serde(rename = "AdjstmntRsn"))]
pub adjstmnt_rsn: Max35Text,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "InsrncAmt")]
#[cfg_attr(feature = "serde", serde(rename = "InsrncAmt"))]
pub insrnc_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "VATInvcRef")]
#[cfg_attr(feature = "serde", serde(rename = "VATInvcRef"))]
pub vat_invc_ref: Max35Text,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
#[yaserde(rename = "ZeroCostToCstmr")]
#[cfg_attr(feature = "serde", serde(rename = "ZeroCostToCstmr"))]
pub zero_cost_to_cstmr: TrueFalseIndicator,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for InvoiceLineItem4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct IssuerData1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max11NumericText,
#[yaserde(rename = "BizId")]
#[cfg_attr(feature = "serde", serde(rename = "BizId"))]
pub biz_id: Max15AlphaNumericText,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Iso3NumericCountryCode,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max35Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max99Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LclData")]
#[cfg_attr(feature = "serde", serde(rename = "LclData"))]
pub lcl_data: Vec<LocalData20>,
}
impl Validate for IssuerData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Jurisdiction2 {
#[yaserde(rename = "DmstInd")]
#[cfg_attr(feature = "serde", serde(rename = "DmstInd"))]
pub dmst_ind: TrueFalseIndicator,
#[yaserde(rename = "DmstQlfctn")]
#[cfg_attr(feature = "serde", serde(rename = "DmstQlfctn"))]
pub dmst_qlfctn: Max35Text,
}
impl Validate for Jurisdiction2 {}
#[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:cain.025.001.04")]
pub enum LegalStructure1Code {
#[yaserde(rename = "STAE")]
#[cfg_attr(feature = "serde", serde(rename = "STAE"))]
Stae,
#[yaserde(rename = "PVIN")]
#[cfg_attr(feature = "serde", serde(rename = "PVIN"))]
Pvin,
#[yaserde(rename = "MUNI")]
#[cfg_attr(feature = "serde", serde(rename = "MUNI"))]
Muni,
#[yaserde(rename = "CNTY")]
#[cfg_attr(feature = "serde", serde(rename = "CNTY"))]
Cnty,
#[yaserde(rename = "NATI")]
#[cfg_attr(feature = "serde", serde(rename = "NATI"))]
Nati,
__Unknown__(String),
}
impl Default for LegalStructure1Code {
fn default() -> LegalStructure1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for LegalStructure1Code {}
#[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:cain.025.001.04")]
pub enum LifeCycleSupport1Code {
#[yaserde(rename = "AUTH")]
#[cfg_attr(feature = "serde", serde(rename = "AUTH"))]
Auth,
#[yaserde(rename = "FINC")]
#[cfg_attr(feature = "serde", serde(rename = "FINC"))]
Finc,
__Unknown__(String),
}
impl Default for LifeCycleSupport1Code {
fn default() -> LifeCycleSupport1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for LifeCycleSupport1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LocalAddress1 {
#[yaserde(rename = "AdrLine1")]
#[cfg_attr(feature = "serde", serde(rename = "AdrLine1"))]
pub adr_line_1: Max200Text,
#[yaserde(rename = "AdrLine2")]
#[cfg_attr(feature = "serde", serde(rename = "AdrLine2"))]
pub adr_line_2: Max200Text,
#[yaserde(rename = "StrtNm")]
#[cfg_attr(feature = "serde", serde(rename = "StrtNm"))]
pub strt_nm: Max200Text,
#[yaserde(rename = "BldgNb")]
#[cfg_attr(feature = "serde", serde(rename = "BldgNb"))]
pub bldg_nb: Max35Text,
#[yaserde(rename = "PstlCd")]
#[cfg_attr(feature = "serde", serde(rename = "PstlCd"))]
pub pstl_cd: Max35Text,
#[yaserde(rename = "TwnNm")]
#[cfg_attr(feature = "serde", serde(rename = "TwnNm"))]
pub twn_nm: Max100Text,
#[yaserde(rename = "CtrySubDvsnMnrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMnrNm"))]
pub ctry_sub_dvsn_mnr_nm: Max100Text,
#[yaserde(rename = "CtrySubDvsnMjrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMjrNm"))]
pub ctry_sub_dvsn_mjr_nm: Max100Text,
}
impl Validate for LocalAddress1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LocalAddress2 {
#[yaserde(rename = "Line1")]
#[cfg_attr(feature = "serde", serde(rename = "Line1"))]
pub line_1: Max200Text,
#[yaserde(rename = "Line2")]
#[cfg_attr(feature = "serde", serde(rename = "Line2"))]
pub line_2: Max200Text,
#[yaserde(rename = "StrtNm")]
#[cfg_attr(feature = "serde", serde(rename = "StrtNm"))]
pub strt_nm: Max200Text,
#[yaserde(rename = "BldgNb")]
#[cfg_attr(feature = "serde", serde(rename = "BldgNb"))]
pub bldg_nb: Max35Text,
#[yaserde(rename = "PstlCd")]
#[cfg_attr(feature = "serde", serde(rename = "PstlCd"))]
pub pstl_cd: Max35Text,
#[yaserde(rename = "TwnNm")]
#[cfg_attr(feature = "serde", serde(rename = "TwnNm"))]
pub twn_nm: Max100Text,
#[yaserde(rename = "CtrySubDvsnMnrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMnrNm"))]
pub ctry_sub_dvsn_mnr_nm: Max100Text,
#[yaserde(rename = "CtrySubDvsnMjrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CtrySubDvsnMjrNm"))]
pub ctry_sub_dvsn_mjr_nm: Max100Text,
}
impl Validate for LocalAddress2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LocalAmenity2 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: LocationAmenity2Code,
#[yaserde(rename = "AvlblInd")]
#[cfg_attr(feature = "serde", serde(rename = "AvlblInd"))]
pub avlbl_ind: TrueFalseIndicator,
}
impl Validate for LocalAmenity2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LocalData19 {
#[yaserde(rename = "Lang")]
#[cfg_attr(feature = "serde", serde(rename = "Lang"))]
pub lang: Isomax3ALanguageCode,
#[yaserde(rename = "NcodgFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "NcodgFrmt"))]
pub ncodg_frmt: Max35Text,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max70Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max210Text,
#[yaserde(rename = "NmAndLctn")]
#[cfg_attr(feature = "serde", serde(rename = "NmAndLctn"))]
pub nm_and_lctn: Max200Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: LocalAddress2,
#[yaserde(rename = "SvcLctn")]
#[cfg_attr(feature = "serde", serde(rename = "SvcLctn"))]
pub svc_lctn: LocalAddress1,
#[yaserde(rename = "AddtlAdr")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlAdr"))]
pub addtl_adr: Max512Text,
#[yaserde(rename = "AddtlCtct")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlCtct"))]
pub addtl_ctct: Max512Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for LocalData19 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LocalData20 {
#[yaserde(rename = "Lang")]
#[cfg_attr(feature = "serde", serde(rename = "Lang"))]
pub lang: Isomax3ALanguageCode,
#[yaserde(rename = "NcodgFrmt")]
#[cfg_attr(feature = "serde", serde(rename = "NcodgFrmt"))]
pub ncodg_frmt: Max35Text,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max70Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max210Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: LocalAddress2,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for LocalData20 {}
#[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:cain.025.001.04")]
pub enum LocationAmenity2Code {
#[yaserde(rename = "AADA")]
#[cfg_attr(feature = "serde", serde(rename = "AADA"))]
Aada,
#[yaserde(rename = "AFLA")]
#[cfg_attr(feature = "serde", serde(rename = "AFLA"))]
Afla,
#[yaserde(rename = "AVLA")]
#[cfg_attr(feature = "serde", serde(rename = "AVLA"))]
Avla,
#[yaserde(rename = "CRWA")]
#[cfg_attr(feature = "serde", serde(rename = "CRWA"))]
Crwa,
#[yaserde(rename = "CVSA")]
#[cfg_attr(feature = "serde", serde(rename = "CVSA"))]
Cvsa,
#[yaserde(rename = "DISA")]
#[cfg_attr(feature = "serde", serde(rename = "DISA"))]
Disa,
#[yaserde(rename = "EWAA")]
#[cfg_attr(feature = "serde", serde(rename = "EWAA"))]
Ewaa,
#[yaserde(rename = "MRLA")]
#[cfg_attr(feature = "serde", serde(rename = "MRLA"))]
Mrla,
#[yaserde(rename = "PAPA")]
#[cfg_attr(feature = "serde", serde(rename = "PAPA"))]
Papa,
#[yaserde(rename = "TSHA")]
#[cfg_attr(feature = "serde", serde(rename = "TSHA"))]
Tsha,
#[yaserde(rename = "TSRA")]
#[cfg_attr(feature = "serde", serde(rename = "TSRA"))]
Tsra,
#[yaserde(rename = "TSSA")]
#[cfg_attr(feature = "serde", serde(rename = "TSSA"))]
Tssa,
#[yaserde(rename = "TFHA")]
#[cfg_attr(feature = "serde", serde(rename = "TFHA"))]
Tfha,
#[yaserde(rename = "VSWA")]
#[cfg_attr(feature = "serde", serde(rename = "VSWA"))]
Vswa,
#[yaserde(rename = "VHPA")]
#[cfg_attr(feature = "serde", serde(rename = "VHPA"))]
Vhpa,
#[yaserde(rename = "VMRA")]
#[cfg_attr(feature = "serde", serde(rename = "VMRA"))]
Vmra,
__Unknown__(String),
}
impl Default for LocationAmenity2Code {
fn default() -> LocationAmenity2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for LocationAmenity2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Lodging5 {
#[yaserde(rename = "FolioNb")]
#[cfg_attr(feature = "serde", serde(rename = "FolioNb"))]
pub folio_nb: Max35Text,
#[yaserde(rename = "PrprtyTp")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyTp"))]
pub prprty_tp: LodgingActivity2Code,
#[yaserde(rename = "PrstgsPrprty")]
#[cfg_attr(feature = "serde", serde(rename = "PrstgsPrprty"))]
pub prstgs_prprty: Max35Text,
#[yaserde(rename = "PrprtyNm")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyNm"))]
pub prprty_nm: Max35Text,
#[yaserde(rename = "PrprtyId")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyId"))]
pub prprty_id: Max35Text,
#[yaserde(rename = "PrprtyBizNm")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyBizNm"))]
pub prprty_biz_nm: Max35Text,
#[yaserde(rename = "PrprtyLglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyLglCorpNm"))]
pub prprty_lgl_corp_nm: Max99Text,
#[yaserde(rename = "PrprtyAdr")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyAdr"))]
pub prprty_adr: Address4,
#[yaserde(rename = "PrprtyLctnCd")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyLctnCd"))]
pub prprty_lctn_cd: Max35Text,
#[yaserde(rename = "PrprtyLclTmZone")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyLclTmZone"))]
pub prprty_lcl_tm_zone: Max70Text,
#[yaserde(rename = "PrprtyLclData")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyLclData"))]
pub prprty_lcl_data: Vec<LocalData20>,
#[yaserde(rename = "PrprtyLclCcy")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyLclCcy"))]
pub prprty_lcl_ccy: Iso3NumericCurrencyCode,
#[yaserde(rename = "PrprtyCtct")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyCtct"))]
pub prprty_ctct: ContactBusiness1,
#[yaserde(rename = "PrprtyFireSftyAct")]
#[cfg_attr(feature = "serde", serde(rename = "PrprtyFireSftyAct"))]
pub prprty_fire_sfty_act: TrueFalseIndicator,
#[yaserde(rename = "Cstmr")]
#[cfg_attr(feature = "serde", serde(rename = "Cstmr"))]
pub cstmr: Vec<Customer10>,
#[yaserde(rename = "NbOfRooms")]
#[cfg_attr(feature = "serde", serde(rename = "NbOfRooms"))]
pub nb_of_rooms: Max4NumericText,
#[yaserde(rename = "Room")]
#[cfg_attr(feature = "serde", serde(rename = "Room"))]
pub room: Vec<LodgingRoom2>,
#[yaserde(rename = "Drtn")]
#[cfg_attr(feature = "serde", serde(rename = "Drtn"))]
pub drtn: Max4NumericText,
#[yaserde(rename = "Arrvl")]
#[cfg_attr(feature = "serde", serde(rename = "Arrvl"))]
pub arrvl: DepartureOrArrival2,
#[yaserde(rename = "Dprture")]
#[cfg_attr(feature = "serde", serde(rename = "Dprture"))]
pub dprture: DepartureOrArrival1,
#[yaserde(rename = "NoShow")]
#[cfg_attr(feature = "serde", serde(rename = "NoShow"))]
pub no_show: TrueFalseIndicator,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "InsrncAmt")]
#[cfg_attr(feature = "serde", serde(rename = "InsrncAmt"))]
pub insrnc_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "TtlTax")]
#[cfg_attr(feature = "serde", serde(rename = "TtlTax"))]
pub ttl_tax: Vec<Tax44>,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "AuthrsdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AuthrsdAmt"))]
pub authrsd_amt: Vec<AuthorisedAmount2>,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "LltyPrgrmm")]
#[cfg_attr(feature = "serde", serde(rename = "LltyPrgrmm"))]
pub llty_prgrmm: Vec<LoyaltyProgramme4>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LineItm")]
#[cfg_attr(feature = "serde", serde(rename = "LineItm"))]
pub line_itm: Vec<LodgingLineItem4>,
}
impl Validate for Lodging5 {}
#[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:cain.025.001.04")]
pub enum LodgingActivity2Code {
#[yaserde(rename = "APTM")]
#[cfg_attr(feature = "serde", serde(rename = "APTM"))]
Aptm,
#[yaserde(rename = "BEBR")]
#[cfg_attr(feature = "serde", serde(rename = "BEBR"))]
Bebr,
#[yaserde(rename = "COTT")]
#[cfg_attr(feature = "serde", serde(rename = "COTT"))]
Cott,
#[yaserde(rename = "CRUI")]
#[cfg_attr(feature = "serde", serde(rename = "CRUI"))]
Crui,
#[yaserde(rename = "HOME")]
#[cfg_attr(feature = "serde", serde(rename = "HOME"))]
Home,
#[yaserde(rename = "HOST")]
#[cfg_attr(feature = "serde", serde(rename = "HOST"))]
Host,
#[yaserde(rename = "HOTL")]
#[cfg_attr(feature = "serde", serde(rename = "HOTL"))]
Hotl,
#[yaserde(rename = "LODG")]
#[cfg_attr(feature = "serde", serde(rename = "LODG"))]
Lodg,
#[yaserde(rename = "MOTL")]
#[cfg_attr(feature = "serde", serde(rename = "MOTL"))]
Motl,
#[yaserde(rename = "RESO")]
#[cfg_attr(feature = "serde", serde(rename = "RESO"))]
Reso,
#[yaserde(rename = "ROAB")]
#[cfg_attr(feature = "serde", serde(rename = "ROAB"))]
Roab,
#[yaserde(rename = "TOSH")]
#[cfg_attr(feature = "serde", serde(rename = "TOSH"))]
Tosh,
__Unknown__(String),
}
impl Default for LodgingActivity2Code {
fn default() -> LodgingActivity2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for LodgingActivity2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LodgingLineItem4 {
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: LodgingService1Code,
#[yaserde(rename = "OthrTp")]
#[cfg_attr(feature = "serde", serde(rename = "OthrTp"))]
pub othr_tp: Max35Text,
#[yaserde(rename = "PstChckOut")]
#[cfg_attr(feature = "serde", serde(rename = "PstChckOut"))]
pub pst_chck_out: TrueFalseIndicator,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
#[yaserde(rename = "UnitAmt")]
#[cfg_attr(feature = "serde", serde(rename = "UnitAmt"))]
pub unit_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Drtn")]
#[cfg_attr(feature = "serde", serde(rename = "Drtn"))]
pub drtn: Max4NumericText,
#[yaserde(rename = "SubTtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "SubTtlAmt"))]
pub sub_ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for LodgingLineItem4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LodgingRoom2 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
#[yaserde(rename = "Lctn")]
#[cfg_attr(feature = "serde", serde(rename = "Lctn"))]
pub lctn: Max35Text,
#[yaserde(rename = "BedTp")]
#[cfg_attr(feature = "serde", serde(rename = "BedTp"))]
pub bed_tp: Max70Text,
#[yaserde(rename = "Gsts")]
#[cfg_attr(feature = "serde", serde(rename = "Gsts"))]
pub gsts: Max3NumericText,
#[yaserde(rename = "Adlts")]
#[cfg_attr(feature = "serde", serde(rename = "Adlts"))]
pub adlts: Max3NumericText,
#[yaserde(rename = "Chldrn")]
#[cfg_attr(feature = "serde", serde(rename = "Chldrn"))]
pub chldrn: Max3NumericText,
#[yaserde(rename = "DalyRate")]
#[cfg_attr(feature = "serde", serde(rename = "DalyRate"))]
pub daly_rate: ImpliedCurrencyAndAmount,
}
impl Validate for LodgingRoom2 {}
#[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:cain.025.001.04")]
pub enum LodgingService1Code {
#[yaserde(rename = "ACCO")]
#[cfg_attr(feature = "serde", serde(rename = "ACCO"))]
Acco,
#[yaserde(rename = "AUDI")]
#[cfg_attr(feature = "serde", serde(rename = "AUDI"))]
Audi,
#[yaserde(rename = "BANQ")]
#[cfg_attr(feature = "serde", serde(rename = "BANQ"))]
Banq,
#[yaserde(rename = "BREK")]
#[cfg_attr(feature = "serde", serde(rename = "BREK"))]
Brek,
#[yaserde(rename = "BUSS")]
#[cfg_attr(feature = "serde", serde(rename = "BUSS"))]
Buss,
#[yaserde(rename = "CONC")]
#[cfg_attr(feature = "serde", serde(rename = "CONC"))]
Conc,
#[yaserde(rename = "EARA")]
#[cfg_attr(feature = "serde", serde(rename = "EARA"))]
Eara,
#[yaserde(rename = "EARD")]
#[cfg_attr(feature = "serde", serde(rename = "EARD"))]
Eard,
#[yaserde(rename = "ENTR")]
#[cfg_attr(feature = "serde", serde(rename = "ENTR"))]
Entr,
#[yaserde(rename = "FCAA")]
#[cfg_attr(feature = "serde", serde(rename = "FCAA"))]
Fcaa,
#[yaserde(rename = "GAME")]
#[cfg_attr(feature = "serde", serde(rename = "GAME"))]
Game,
#[yaserde(rename = "GARA")]
#[cfg_attr(feature = "serde", serde(rename = "GARA"))]
Gara,
#[yaserde(rename = "GIFT")]
#[cfg_attr(feature = "serde", serde(rename = "GIFT"))]
Gift,
#[yaserde(rename = "HEAL")]
#[cfg_attr(feature = "serde", serde(rename = "HEAL"))]
Heal,
#[yaserde(rename = "INTE")]
#[cfg_attr(feature = "serde", serde(rename = "INTE"))]
Inte,
#[yaserde(rename = "LAUN")]
#[cfg_attr(feature = "serde", serde(rename = "LAUN"))]
Laun,
#[yaserde(rename = "LONG")]
#[cfg_attr(feature = "serde", serde(rename = "LONG"))]
Long,
#[yaserde(rename = "MINI")]
#[cfg_attr(feature = "serde", serde(rename = "MINI"))]
Mini,
#[yaserde(rename = "NOSH")]
#[cfg_attr(feature = "serde", serde(rename = "NOSH"))]
Nosh,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "PARK")]
#[cfg_attr(feature = "serde", serde(rename = "PARK"))]
Park,
#[yaserde(rename = "PHON")]
#[cfg_attr(feature = "serde", serde(rename = "PHON"))]
Phon,
#[yaserde(rename = "REST")]
#[cfg_attr(feature = "serde", serde(rename = "REST"))]
Rest,
#[yaserde(rename = "RMSE")]
#[cfg_attr(feature = "serde", serde(rename = "RMSE"))]
Rmse,
#[yaserde(rename = "SPAS")]
#[cfg_attr(feature = "serde", serde(rename = "SPAS"))]
Spas,
#[yaserde(rename = "THRD")]
#[cfg_attr(feature = "serde", serde(rename = "THRD"))]
Thrd,
#[yaserde(rename = "TRAN")]
#[cfg_attr(feature = "serde", serde(rename = "TRAN"))]
Tran,
#[yaserde(rename = "VODS")]
#[cfg_attr(feature = "serde", serde(rename = "VODS"))]
Vods,
__Unknown__(String),
}
impl Default for LodgingService1Code {
fn default() -> LodgingService1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for LodgingService1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct LoyaltyProgramme4 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max70Text,
#[yaserde(rename = "PtcptId")]
#[cfg_attr(feature = "serde", serde(rename = "PtcptId"))]
pub ptcpt_id: Max70Text,
}
impl Validate for LoyaltyProgramme4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Macdata1 {
#[yaserde(rename = "Ctrl")]
#[cfg_attr(feature = "serde", serde(rename = "Ctrl"))]
pub ctrl: Exact1HexBinaryText,
#[yaserde(rename = "KeySetIdr")]
#[cfg_attr(feature = "serde", serde(rename = "KeySetIdr"))]
pub key_set_idr: Max8NumericText,
#[yaserde(rename = "DrvdInf")]
#[cfg_attr(feature = "serde", serde(rename = "DrvdInf"))]
pub drvd_inf: Max32HexBinaryText,
#[yaserde(rename = "Algo")]
#[cfg_attr(feature = "serde", serde(rename = "Algo"))]
pub algo: Max2NumericText,
#[yaserde(rename = "KeyLngth")]
#[cfg_attr(feature = "serde", serde(rename = "KeyLngth"))]
pub key_lngth: Max4NumericText,
#[yaserde(rename = "KeyPrtcn")]
#[cfg_attr(feature = "serde", serde(rename = "KeyPrtcn"))]
pub key_prtcn: Max2NumericText,
#[yaserde(rename = "KeyIndx")]
#[cfg_attr(feature = "serde", serde(rename = "KeyIndx"))]
pub key_indx: Max5NumericText,
#[yaserde(rename = "PddgMtd")]
#[cfg_attr(feature = "serde", serde(rename = "PddgMtd"))]
pub pddg_mtd: Max2NumericText,
#[yaserde(rename = "InitlstnVctr")]
#[cfg_attr(feature = "serde", serde(rename = "InitlstnVctr"))]
pub initlstn_vctr: Max32HexBinaryText,
}
impl Validate for Macdata1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max1000Text (pub String);
crate::simple_type!(Max1000Text);
impl Validate for Max1000Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 1000 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 1000 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct 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 Max100Text (pub String);
crate::simple_type!(Max100Text);
impl Validate for Max100Text {
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() > 100 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 100 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max105Text (pub String);
crate::simple_type!(Max105Text);
impl Validate for Max105Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 105 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 105 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max10NumberFraction2 (pub String);
crate::simple_type!(Max10NumberFraction2);
impl Validate for Max10NumberFraction2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max10NumericText (pub String);
crate::simple_type!(Max10NumericText);
impl Validate for Max10NumericText {}
#[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 Max11NumericText (pub String);
crate::simple_type!(Max11NumericText);
impl Validate for Max11NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max12NumericText (pub String);
crate::simple_type!(Max12NumericText);
impl Validate for Max12NumericText {}
#[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 Max15AlphaNumericText (pub String);
crate::simple_type!(Max15AlphaNumericText);
impl Validate for Max15AlphaNumericText {
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() > 15 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 15 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max15NumericText (pub String);
crate::simple_type!(Max15NumericText);
impl Validate for Max15NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max15Text (pub String);
crate::simple_type!(Max15Text);
impl Validate for Max15Text {
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() > 15 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 15 \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 Max19NumericText (pub String);
crate::simple_type!(Max19NumericText);
impl Validate for Max19NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max1Number (pub String);
crate::simple_type!(Max1Number);
impl Validate for Max1Number {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max200Text (pub String);
crate::simple_type!(Max200Text);
impl Validate for Max200Text {
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() > 200 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 200 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max2048Text (pub String);
crate::simple_type!(Max2048Text);
impl Validate for Max2048Text {
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() > 2048 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 2048 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max20Text (pub String);
crate::simple_type!(Max20Text);
impl Validate for Max20Text {
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() > 20 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 20 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max210Text (pub String);
crate::simple_type!(Max210Text);
impl Validate for Max210Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 210 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 210 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max23NumericText (pub String);
crate::simple_type!(Max23NumericText);
impl Validate for Max23NumericText {}
#[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 Max2NumericText (pub String);
crate::simple_type!(Max2NumericText);
impl Validate for Max2NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max32HexBinaryText (pub String);
crate::simple_type!(Max32HexBinaryText);
impl Validate for Max32HexBinaryText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max350Text (pub String);
crate::simple_type!(Max350Text);
impl Validate for Max350Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 350 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 350 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max35NumericText (pub String);
crate::simple_type!(Max35NumericText);
impl Validate for Max35NumericText {}
#[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 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 Max40Text (pub String);
crate::simple_type!(Max40Text);
impl Validate for Max40Text {
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() > 40 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 40 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max4AlphaNumericText (pub String);
crate::simple_type!(Max4AlphaNumericText);
impl Validate for Max4AlphaNumericText {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 4 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 4 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max4NumericText (pub String);
crate::simple_type!(Max4NumericText);
impl Validate for Max4NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max4Text (pub String);
crate::simple_type!(Max4Text);
impl Validate for Max4Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 4 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 4 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max50Text (pub String);
crate::simple_type!(Max50Text);
impl Validate for Max50Text {
fn validate(&self) -> Result<(), String> {
#[allow(clippy::len_zero)]
if self.0.len() < 1 {
return Err(format!("MinLength validation error. \nExpected: 0 length >= 1 \nActual: 0 length == {}", self.0.len()));
}
if self.0.len() > 50 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 50 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max512Text (pub String);
crate::simple_type!(Max512Text);
impl Validate for Max512Text {
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() > 512 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 512 \nActual: 0 length == {}", self.0.len()));
}
Ok(())
}
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max5NumericText (pub String);
crate::simple_type!(Max5NumericText);
impl Validate for Max5NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max6NumberFraction2 (pub String);
crate::simple_type!(Max6NumberFraction2);
impl Validate for Max6NumberFraction2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max6NumericText (pub String);
crate::simple_type!(Max6NumericText);
impl Validate for Max6NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct 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 Max8HexBinaryText (pub String);
crate::simple_type!(Max8HexBinaryText);
impl Validate for Max8HexBinaryText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max8NumericText (pub String);
crate::simple_type!(Max8NumericText);
impl Validate for Max8NumericText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max9999HexBinaryText (pub String);
crate::simple_type!(Max9999HexBinaryText);
impl Validate for Max9999HexBinaryText {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct Max99Text (pub String);
crate::simple_type!(Max99Text);
impl Validate for Max99Text {
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() > 99 {
return Err(format!("MaxLength validation error. \nExpected: 0 length <= 99 \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:cain.025.001.04")]
pub enum MessageClass2Code {
#[yaserde(rename = "ADDE")]
#[cfg_attr(feature = "serde", serde(rename = "ADDE"))]
Adde,
#[yaserde(rename = "AMDT")]
#[cfg_attr(feature = "serde", serde(rename = "AMDT"))]
Amdt,
#[yaserde(rename = "AUTH")]
#[cfg_attr(feature = "serde", serde(rename = "AUTH"))]
Auth,
#[yaserde(rename = "CMGT")]
#[cfg_attr(feature = "serde", serde(rename = "CMGT"))]
Cmgt,
#[yaserde(rename = "CBCK")]
#[cfg_attr(feature = "serde", serde(rename = "CBCK"))]
Cbck,
#[yaserde(rename = "FEEC")]
#[cfg_attr(feature = "serde", serde(rename = "FEEC"))]
Feec,
#[yaserde(rename = "FINL")]
#[cfg_attr(feature = "serde", serde(rename = "FINL"))]
Finl,
#[yaserde(rename = "INVR")]
#[cfg_attr(feature = "serde", serde(rename = "INVR"))]
Invr,
__Unknown__(String),
}
impl Default for MessageClass2Code {
fn default() -> MessageClass2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MessageClass2Code {}
#[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:cain.025.001.04")]
pub enum MessageFunction16Code {
#[yaserde(rename = "ADVC")]
#[cfg_attr(feature = "serde", serde(rename = "ADVC"))]
Advc,
#[yaserde(rename = "NOTI")]
#[cfg_attr(feature = "serde", serde(rename = "NOTI"))]
Noti,
#[yaserde(rename = "CAAD")]
#[cfg_attr(feature = "serde", serde(rename = "CAAD"))]
Caad,
#[yaserde(rename = "CANO")]
#[cfg_attr(feature = "serde", serde(rename = "CANO"))]
Cano,
#[yaserde(rename = "REQU")]
#[cfg_attr(feature = "serde", serde(rename = "REQU"))]
Requ,
__Unknown__(String),
}
impl Default for MessageFunction16Code {
fn default() -> MessageFunction16Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for MessageFunction16Code {}
#[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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub enum OfficialDocumentType2Code {
#[yaserde(rename = "ARNU")]
#[cfg_attr(feature = "serde", serde(rename = "ARNU"))]
Arnu,
#[yaserde(rename = "AUTH")]
#[cfg_attr(feature = "serde", serde(rename = "AUTH"))]
Auth,
#[yaserde(rename = "DIPL")]
#[cfg_attr(feature = "serde", serde(rename = "DIPL"))]
Dipl,
#[yaserde(rename = "DVLC")]
#[cfg_attr(feature = "serde", serde(rename = "DVLC"))]
Dvlc,
#[yaserde(rename = "EURO")]
#[cfg_attr(feature = "serde", serde(rename = "EURO"))]
Euro,
#[yaserde(rename = "IDEN")]
#[cfg_attr(feature = "serde", serde(rename = "IDEN"))]
Iden,
#[yaserde(rename = "INTE")]
#[cfg_attr(feature = "serde", serde(rename = "INTE"))]
Inte,
#[yaserde(rename = "INPO")]
#[cfg_attr(feature = "serde", serde(rename = "INPO"))]
Inpo,
#[yaserde(rename = "LZPR")]
#[cfg_attr(feature = "serde", serde(rename = "LZPR"))]
Lzpr,
#[yaserde(rename = "PASS")]
#[cfg_attr(feature = "serde", serde(rename = "PASS"))]
Pass,
#[yaserde(rename = "VISA")]
#[cfg_attr(feature = "serde", serde(rename = "VISA"))]
Visa,
#[yaserde(rename = "PERM")]
#[cfg_attr(feature = "serde", serde(rename = "PERM"))]
Perm,
#[yaserde(rename = "REFU")]
#[cfg_attr(feature = "serde", serde(rename = "REFU"))]
Refu,
__Unknown__(String),
}
impl Default for OfficialDocumentType2Code {
fn default() -> OfficialDocumentType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for OfficialDocumentType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct OnBoardDiagnostics1 {
#[yaserde(rename = "NgnIdleTm")]
#[cfg_attr(feature = "serde", serde(rename = "NgnIdleTm"))]
pub ngn_idle_tm: Max10NumberFraction2,
#[yaserde(rename = "NgnTtlIdleTm")]
#[cfg_attr(feature = "serde", serde(rename = "NgnTtlIdleTm"))]
pub ngn_ttl_idle_tm: Max10NumberFraction2,
#[yaserde(rename = "NgnHrs")]
#[cfg_attr(feature = "serde", serde(rename = "NgnHrs"))]
pub ngn_hrs: Max10NumberFraction2,
#[yaserde(rename = "NgnTtlTm")]
#[cfg_attr(feature = "serde", serde(rename = "NgnTtlTm"))]
pub ngn_ttl_tm: Max6NumberFraction2,
#[yaserde(rename = "NgnLd")]
#[cfg_attr(feature = "serde", serde(rename = "NgnLd"))]
pub ngn_ld: Max12NumericText,
#[yaserde(rename = "NgnRPM")]
#[cfg_attr(feature = "serde", serde(rename = "NgnRPM"))]
pub ngn_rpm: Max5NumericText,
#[yaserde(rename = "NgnOilTmprtr")]
#[cfg_attr(feature = "serde", serde(rename = "NgnOilTmprtr"))]
pub ngn_oil_tmprtr: Max6NumberFraction2,
#[yaserde(rename = "NgnOilPrssr")]
#[cfg_attr(feature = "serde", serde(rename = "NgnOilPrssr"))]
pub ngn_oil_prssr: Max3NumericText,
#[yaserde(rename = "NgnOilLifeRmng")]
#[cfg_attr(feature = "serde", serde(rename = "NgnOilLifeRmng"))]
pub ngn_oil_life_rmng: Max3NumericText,
#[yaserde(rename = "ChckNgnWrngSts")]
#[cfg_attr(feature = "serde", serde(rename = "ChckNgnWrngSts"))]
pub chck_ngn_wrng_sts: Max35Text,
#[yaserde(rename = "FuelTankLvlStart")]
#[cfg_attr(feature = "serde", serde(rename = "FuelTankLvlStart"))]
pub fuel_tank_lvl_start: Max4NumericText,
#[yaserde(rename = "FuelGaugeLvl")]
#[cfg_attr(feature = "serde", serde(rename = "FuelGaugeLvl"))]
pub fuel_gauge_lvl: Max4NumericText,
#[yaserde(rename = "FuelEcnmy")]
#[cfg_attr(feature = "serde", serde(rename = "FuelEcnmy"))]
pub fuel_ecnmy: Max6NumberFraction2,
#[yaserde(rename = "RfrgrtnHrs")]
#[cfg_attr(feature = "serde", serde(rename = "RfrgrtnHrs"))]
pub rfrgrtn_hrs: Max10NumberFraction2,
#[yaserde(rename = "RfrgrtnTmprtr")]
#[cfg_attr(feature = "serde", serde(rename = "RfrgrtnTmprtr"))]
pub rfrgrtn_tmprtr: Max6NumberFraction2,
#[yaserde(rename = "CoolntTmprtr")]
#[cfg_attr(feature = "serde", serde(rename = "CoolntTmprtr"))]
pub coolnt_tmprtr: Max6NumberFraction2,
#[yaserde(rename = "BttryVltg")]
#[cfg_attr(feature = "serde", serde(rename = "BttryVltg"))]
pub bttry_vltg: Max4NumericText,
#[yaserde(rename = "HardBrakg")]
#[cfg_attr(feature = "serde", serde(rename = "HardBrakg"))]
pub hard_brakg: Max4NumericText,
#[yaserde(rename = "HardAcclrtn")]
#[cfg_attr(feature = "serde", serde(rename = "HardAcclrtn"))]
pub hard_acclrtn: Max4NumericText,
}
impl Validate for OnBoardDiagnostics1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct OriginalDataElements6 {
#[yaserde(rename = "MsgClss")]
#[cfg_attr(feature = "serde", serde(rename = "MsgClss"))]
pub msg_clss: MessageClass2Code,
#[yaserde(rename = "MsgFctn")]
#[cfg_attr(feature = "serde", serde(rename = "MsgFctn"))]
pub msg_fctn: MessageFunction16Code,
#[yaserde(rename = "AcqrrId")]
#[cfg_attr(feature = "serde", serde(rename = "AcqrrId"))]
pub acqrr_id: Max11NumericText,
#[yaserde(rename = "SndrId")]
#[cfg_attr(feature = "serde", serde(rename = "SndrId"))]
pub sndr_id: Max11NumericText,
#[yaserde(rename = "TxTp")]
#[cfg_attr(feature = "serde", serde(rename = "TxTp"))]
pub tx_tp: Iso8583TransactionTypeCode,
#[yaserde(rename = "TxId")]
#[cfg_attr(feature = "serde", serde(rename = "TxId"))]
pub tx_id: OriginalTransactionIdentification2,
#[yaserde(rename = "ConvsDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "ConvsDtTm"))]
pub convs_dt_tm: DateTime2,
#[yaserde(rename = "TxAmts")]
#[cfg_attr(feature = "serde", serde(rename = "TxAmts"))]
pub tx_amts: OriginalTransactionAmounts4,
#[yaserde(rename = "AddtlFee")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlFee"))]
pub addtl_fee: Vec<AdditionalFee4>,
#[yaserde(rename = "RspnCd")]
#[cfg_attr(feature = "serde", serde(rename = "RspnCd"))]
pub rspn_cd: Iso8583ResponseCode,
#[yaserde(rename = "ApprvlCd")]
#[cfg_attr(feature = "serde", serde(rename = "ApprvlCd"))]
pub apprvl_cd: Exact6AlphaNumericText,
#[yaserde(rename = "DfrrdSttlmDt")]
#[cfg_attr(feature = "serde", serde(rename = "DfrrdSttlmDt"))]
pub dfrrd_sttlm_dt: Isodate,
}
impl Validate for OriginalDataElements6 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct OriginalTransactionAmounts4 {
#[yaserde(rename = "AmtQlfr")]
#[cfg_attr(feature = "serde", serde(rename = "AmtQlfr"))]
pub amt_qlfr: TypeOfAmount22Code,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Ccy")]
#[cfg_attr(feature = "serde", serde(rename = "Ccy"))]
pub ccy: Iso3NumericCurrencyCode,
#[yaserde(rename = "CrdhldrBllgAmt")]
#[cfg_attr(feature = "serde", serde(rename = "CrdhldrBllgAmt"))]
pub crdhldr_bllg_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CrdhldrBllgCcy")]
#[cfg_attr(feature = "serde", serde(rename = "CrdhldrBllgCcy"))]
pub crdhldr_bllg_ccy: Iso3NumericCurrencyCode,
#[yaserde(rename = "CrdhldrBllgFctvXchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "CrdhldrBllgFctvXchgRate"))]
pub crdhldr_bllg_fctv_xchg_rate: BaseOne25Rate,
#[yaserde(rename = "RcncltnAmt")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnAmt"))]
pub rcncltn_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "RcncltnCcy")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnCcy"))]
pub rcncltn_ccy: Iso3NumericCurrencyCode,
#[yaserde(rename = "RcncltnFctvXchgRate")]
#[cfg_attr(feature = "serde", serde(rename = "RcncltnFctvXchgRate"))]
pub rcncltn_fctv_xchg_rate: BaseOne25Rate,
}
impl Validate for OriginalTransactionAmounts4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct OriginalTransactionIdentification2 {
#[yaserde(rename = "LclDt")]
#[cfg_attr(feature = "serde", serde(rename = "LclDt"))]
pub lcl_dt: Isodate,
#[yaserde(rename = "LclTm")]
#[cfg_attr(feature = "serde", serde(rename = "LclTm"))]
pub lcl_tm: Isotime,
#[yaserde(rename = "TmZone")]
#[cfg_attr(feature = "serde", serde(rename = "TmZone"))]
pub tm_zone: Max70Text,
#[yaserde(rename = "PurchsIdrTp")]
#[cfg_attr(feature = "serde", serde(rename = "PurchsIdrTp"))]
pub purchs_idr_tp: PurchaseIdentifierType3Code,
#[yaserde(rename = "PurchsIdr")]
#[cfg_attr(feature = "serde", serde(rename = "PurchsIdr"))]
pub purchs_idr: Max99Text,
#[yaserde(rename = "TrnsmssnDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "TrnsmssnDtTm"))]
pub trnsmssn_dt_tm: IsodateTime,
#[yaserde(rename = "SysTracAudtNb")]
#[cfg_attr(feature = "serde", serde(rename = "SysTracAudtNb"))]
pub sys_trac_audt_nb: Max12NumericText,
#[yaserde(rename = "RtrvlRefNb")]
#[cfg_attr(feature = "serde", serde(rename = "RtrvlRefNb"))]
pub rtrvl_ref_nb: Exact12Text,
#[yaserde(rename = "LifeCyclSpprt")]
#[cfg_attr(feature = "serde", serde(rename = "LifeCyclSpprt"))]
pub life_cycl_spprt: LifeCycleSupport1Code,
#[yaserde(rename = "LifeCyclId")]
#[cfg_attr(feature = "serde", serde(rename = "LifeCyclId"))]
pub life_cycl_id: Exact15Text,
#[yaserde(rename = "AuthstnSeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "AuthstnSeqNb"))]
pub authstn_seq_nb: Exact2NumericText,
#[yaserde(rename = "PresntmntSeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "PresntmntSeqNb"))]
pub presntmnt_seq_nb: Exact2NumericText,
#[yaserde(rename = "PresntmntSeqCnt")]
#[cfg_attr(feature = "serde", serde(rename = "PresntmntSeqCnt"))]
pub presntmnt_seq_cnt: Exact2NumericText,
#[yaserde(rename = "AuthntcnTkn")]
#[cfg_attr(feature = "serde", serde(rename = "AuthntcnTkn"))]
pub authntcn_tkn: Max35Text,
#[yaserde(rename = "LifeCyclIdMssng")]
#[cfg_attr(feature = "serde", serde(rename = "LifeCyclIdMssng"))]
pub life_cycl_id_mssng: Max70Text,
#[yaserde(rename = "AcqrrRefData")]
#[cfg_attr(feature = "serde", serde(rename = "AcqrrRefData"))]
pub acqrr_ref_data: Max140Text,
#[yaserde(rename = "AcqrrRefNb")]
#[cfg_attr(feature = "serde", serde(rename = "AcqrrRefNb"))]
pub acqrr_ref_nb: Max23NumericText,
#[yaserde(rename = "IssrRefData")]
#[cfg_attr(feature = "serde", serde(rename = "IssrRefData"))]
pub issr_ref_data: Max1000Text,
}
impl Validate for OriginalTransactionIdentification2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct OriginatorData2 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max11NumericText,
#[yaserde(rename = "BizId")]
#[cfg_attr(feature = "serde", serde(rename = "BizId"))]
pub biz_id: Max15AlphaNumericText,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Iso3NumericCountryCode,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max35Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max99Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LclData")]
#[cfg_attr(feature = "serde", serde(rename = "LclData"))]
pub lcl_data: Vec<LocalData20>,
}
impl Validate for OriginatorData2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct PassengerTransport4 {
#[yaserde(rename = "DocNb")]
#[cfg_attr(feature = "serde", serde(rename = "DocNb"))]
pub doc_nb: Max35Text,
#[yaserde(rename = "RsvatnSys")]
#[cfg_attr(feature = "serde", serde(rename = "RsvatnSys"))]
pub rsvatn_sys: Max4Text,
#[yaserde(rename = "RsvatnNb")]
#[cfg_attr(feature = "serde", serde(rename = "RsvatnNb"))]
pub rsvatn_nb: Max35Text,
#[yaserde(rename = "OrgnlRsvatnSys")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlRsvatnSys"))]
pub orgnl_rsvatn_sys: Max4Text,
#[yaserde(rename = "OrgnlRsvatnNb")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlRsvatnNb"))]
pub orgnl_rsvatn_nb: Max35Text,
#[yaserde(rename = "TrvlAuthstnCd")]
#[cfg_attr(feature = "serde", serde(rename = "TrvlAuthstnCd"))]
pub trvl_authstn_cd: Max70Text,
#[yaserde(rename = "TcktIssr")]
#[cfg_attr(feature = "serde", serde(rename = "TcktIssr"))]
pub tckt_issr: Max35Text,
#[yaserde(rename = "OpnTckt")]
#[cfg_attr(feature = "serde", serde(rename = "OpnTckt"))]
pub opn_tckt: TrueFalseIndicator,
#[yaserde(rename = "CstmrRef")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrRef"))]
pub cstmr_ref: Vec<CustomerReference1>,
#[yaserde(rename = "Pssngr")]
#[cfg_attr(feature = "serde", serde(rename = "Pssngr"))]
pub pssngr: Vec<Customer10>,
#[yaserde(rename = "Dprture")]
#[cfg_attr(feature = "serde", serde(rename = "Dprture"))]
pub dprture: DepartureOrArrival1,
#[yaserde(rename = "Drtn")]
#[cfg_attr(feature = "serde", serde(rename = "Drtn"))]
pub drtn: Max4NumericText,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: Vec<AmountAndTax1>,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "LltyPrgrmm")]
#[cfg_attr(feature = "serde", serde(rename = "LltyPrgrmm"))]
pub llty_prgrmm: LoyaltyProgramme4,
#[yaserde(rename = "TripLeg")]
#[cfg_attr(feature = "serde", serde(rename = "TripLeg"))]
pub trip_leg: Vec<TripLeg4>,
#[yaserde(rename = "AncllryPurchs")]
#[cfg_attr(feature = "serde", serde(rename = "AncllryPurchs"))]
pub ancllry_purchs: Vec<AncillaryPurchase4>,
#[yaserde(rename = "HirdVhclDtls")]
#[cfg_attr(feature = "serde", serde(rename = "HirdVhclDtls"))]
pub hird_vhcl_dtls: Vec<HiredVehicle4>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for PassengerTransport4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct PercentageRate (pub String);
crate::simple_type!(PercentageRate);
impl Validate for PercentageRate {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub enum PeriodUnit5Code {
#[yaserde(rename = "MNTH")]
#[cfg_attr(feature = "serde", serde(rename = "MNTH"))]
Mnth,
#[yaserde(rename = "WEEK")]
#[cfg_attr(feature = "serde", serde(rename = "WEEK"))]
Week,
#[yaserde(rename = "YEAR")]
#[cfg_attr(feature = "serde", serde(rename = "YEAR"))]
Year,
#[yaserde(rename = "DAYS")]
#[cfg_attr(feature = "serde", serde(rename = "DAYS"))]
Days,
#[yaserde(rename = "EXDY")]
#[cfg_attr(feature = "serde", serde(rename = "EXDY"))]
Exdy,
#[yaserde(rename = "MINU")]
#[cfg_attr(feature = "serde", serde(rename = "MINU"))]
Minu,
#[yaserde(rename = "HFDA")]
#[cfg_attr(feature = "serde", serde(rename = "HFDA"))]
Hfda,
#[yaserde(rename = "HOUR")]
#[cfg_attr(feature = "serde", serde(rename = "HOUR"))]
Hour,
__Unknown__(String),
}
impl Default for PeriodUnit5Code {
fn default() -> PeriodUnit5Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PeriodUnit5Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug)]
pub struct PhoneNumber (pub String);
crate::simple_type!(PhoneNumber);
impl Validate for PhoneNumber {}
#[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:cain.025.001.04")]
pub enum PresentationMedium2Code {
#[yaserde(rename = "BIOM")]
#[cfg_attr(feature = "serde", serde(rename = "BIOM"))]
Biom,
#[yaserde(rename = "ELEC")]
#[cfg_attr(feature = "serde", serde(rename = "ELEC"))]
Elec,
#[yaserde(rename = "PAPR")]
#[cfg_attr(feature = "serde", serde(rename = "PAPR"))]
Papr,
#[yaserde(rename = "BOTH")]
#[cfg_attr(feature = "serde", serde(rename = "BOTH"))]
Both,
__Unknown__(String),
}
impl Default for PresentationMedium2Code {
fn default() -> PresentationMedium2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PresentationMedium2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Product8 {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Max70Text,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
}
impl Validate for Product8 {}
#[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:cain.025.001.04")]
pub enum ProductCodeType1Code {
#[yaserde(rename = "EA13")]
#[cfg_attr(feature = "serde", serde(rename = "EA13"))]
Ea13,
#[yaserde(rename = "EAN8")]
#[cfg_attr(feature = "serde", serde(rename = "EAN8"))]
Ean8,
#[yaserde(rename = "GTIN")]
#[cfg_attr(feature = "serde", serde(rename = "GTIN"))]
Gtin,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
#[yaserde(rename = "PLUP")]
#[cfg_attr(feature = "serde", serde(rename = "PLUP"))]
Plup,
#[yaserde(rename = "RS14")]
#[cfg_attr(feature = "serde", serde(rename = "RS14"))]
Rs14,
#[yaserde(rename = "UPCA")]
#[cfg_attr(feature = "serde", serde(rename = "UPCA"))]
Upca,
#[yaserde(rename = "UPCE")]
#[cfg_attr(feature = "serde", serde(rename = "UPCE"))]
Upce,
__Unknown__(String),
}
impl Default for ProductCodeType1Code {
fn default() -> ProductCodeType1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ProductCodeType1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ProgrammeMode6 {
#[yaserde(rename = "PropsdId")]
#[cfg_attr(feature = "serde", serde(rename = "PropsdId"))]
pub propsd_id: Vec<Max35Text>,
#[yaserde(rename = "ApldId")]
#[cfg_attr(feature = "serde", serde(rename = "ApldId"))]
pub apld_id: Max35Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for ProgrammeMode6 {}
#[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:cain.025.001.04")]
pub enum ProtectionMethod2Code {
#[yaserde(rename = "SELM")]
#[cfg_attr(feature = "serde", serde(rename = "SELM"))]
Selm,
#[yaserde(rename = "SNCL")]
#[cfg_attr(feature = "serde", serde(rename = "SNCL"))]
Sncl,
#[yaserde(rename = "SOFT")]
#[cfg_attr(feature = "serde", serde(rename = "SOFT"))]
Soft,
#[yaserde(rename = "TEEN")]
#[cfg_attr(feature = "serde", serde(rename = "TEEN"))]
Teen,
#[yaserde(rename = "TPMD")]
#[cfg_attr(feature = "serde", serde(rename = "TPMD"))]
Tpmd,
#[yaserde(rename = "VTEE")]
#[cfg_attr(feature = "serde", serde(rename = "VTEE"))]
Vtee,
__Unknown__(String),
}
impl Default for ProtectionMethod2Code {
fn default() -> ProtectionMethod2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for ProtectionMethod2Code {}
#[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:cain.025.001.04")]
pub enum PurchaseIdentifierType3Code {
#[yaserde(rename = "SUIN")]
#[cfg_attr(feature = "serde", serde(rename = "SUIN"))]
Suin,
#[yaserde(rename = "RELO")]
#[cfg_attr(feature = "serde", serde(rename = "RELO"))]
Relo,
#[yaserde(rename = "INNU")]
#[cfg_attr(feature = "serde", serde(rename = "INNU"))]
Innu,
#[yaserde(rename = "PUID")]
#[cfg_attr(feature = "serde", serde(rename = "PUID"))]
Puid,
#[yaserde(rename = "RENU")]
#[cfg_attr(feature = "serde", serde(rename = "RENU"))]
Renu,
#[yaserde(rename = "RSNU")]
#[cfg_attr(feature = "serde", serde(rename = "RSNU"))]
Rsnu,
#[yaserde(rename = "TINU")]
#[cfg_attr(feature = "serde", serde(rename = "TINU"))]
Tinu,
#[yaserde(rename = "SUOR")]
#[cfg_attr(feature = "serde", serde(rename = "SUOR"))]
Suor,
#[yaserde(rename = "CONU")]
#[cfg_attr(feature = "serde", serde(rename = "CONU"))]
Conu,
#[yaserde(rename = "FONU")]
#[cfg_attr(feature = "serde", serde(rename = "FONU"))]
Fonu,
#[yaserde(rename = "PRNU")]
#[cfg_attr(feature = "serde", serde(rename = "PRNU"))]
Prnu,
#[yaserde(rename = "ORNU")]
#[cfg_attr(feature = "serde", serde(rename = "ORNU"))]
Ornu,
#[yaserde(rename = "CUOR")]
#[cfg_attr(feature = "serde", serde(rename = "CUOR"))]
Cuor,
#[yaserde(rename = "CUPO")]
#[cfg_attr(feature = "serde", serde(rename = "CUPO"))]
Cupo,
#[yaserde(rename = "REAG")]
#[cfg_attr(feature = "serde", serde(rename = "REAG"))]
Reag,
#[yaserde(rename = "TRNU")]
#[cfg_attr(feature = "serde", serde(rename = "TRNU"))]
Trnu,
#[yaserde(rename = "TREF")]
#[cfg_attr(feature = "serde", serde(rename = "TREF"))]
Tref,
__Unknown__(String),
}
impl Default for PurchaseIdentifierType3Code {
fn default() -> PurchaseIdentifierType3Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for PurchaseIdentifierType3Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ReceiverData1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max11NumericText,
#[yaserde(rename = "BizId")]
#[cfg_attr(feature = "serde", serde(rename = "BizId"))]
pub biz_id: Max15AlphaNumericText,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Iso3NumericCountryCode,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max35Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max99Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LclData")]
#[cfg_attr(feature = "serde", serde(rename = "LclData"))]
pub lcl_data: Vec<LocalData20>,
}
impl Validate for ReceiverData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Reconciliation5 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max50Text,
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "ChckptRef")]
#[cfg_attr(feature = "serde", serde(rename = "ChckptRef"))]
pub chckpt_ref: Max35Text,
}
impl Validate for Reconciliation5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct RentalRate3 {
#[yaserde(rename = "Prd")]
#[cfg_attr(feature = "serde", serde(rename = "Prd"))]
pub prd: PeriodUnit5Code,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: ImpliedCurrencyAndAmount,
#[yaserde(rename = "PrdCnt")]
#[cfg_attr(feature = "serde", serde(rename = "PrdCnt"))]
pub prd_cnt: Max4NumericText,
}
impl Validate for RentalRate3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Sale4 {
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "LltyPrgrmm")]
#[cfg_attr(feature = "serde", serde(rename = "LltyPrgrmm"))]
pub llty_prgrmm: LoyaltyProgramme4,
#[yaserde(rename = "Adjstmnt")]
#[cfg_attr(feature = "serde", serde(rename = "Adjstmnt"))]
pub adjstmnt: Vec<Adjustment13>,
#[yaserde(rename = "LineItm")]
#[cfg_attr(feature = "serde", serde(rename = "LineItm"))]
pub line_itm: Vec<SaleItem5>,
}
impl Validate for Sale4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct SaleItem5 {
#[yaserde(rename = "PdctTp")]
#[cfg_attr(feature = "serde", serde(rename = "PdctTp"))]
pub pdct_tp: Max35Text,
#[yaserde(rename = "PdctCd")]
#[cfg_attr(feature = "serde", serde(rename = "PdctCd"))]
pub pdct_cd: Max70Text,
#[yaserde(rename = "PdctCdTp")]
#[cfg_attr(feature = "serde", serde(rename = "PdctCdTp"))]
pub pdct_cd_tp: ProductCodeType1Code,
#[yaserde(rename = "AddtlPdctCd")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlPdctCd"))]
pub addtl_pdct_cd: Max70Text,
#[yaserde(rename = "AddtlPdctCdTp")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlPdctCdTp"))]
pub addtl_pdct_cd_tp: Max35Text,
#[yaserde(rename = "PdctCdModfr")]
#[cfg_attr(feature = "serde", serde(rename = "PdctCdModfr"))]
pub pdct_cd_modfr: DecimalNumber,
#[yaserde(rename = "PdctDesc")]
#[cfg_attr(feature = "serde", serde(rename = "PdctDesc"))]
pub pdct_desc: Max140Text,
#[yaserde(rename = "UnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "UnitOfMeasr"))]
pub unit_of_measr: UnitOfMeasure1Code,
#[yaserde(rename = "OthrUnitOfMeasr")]
#[cfg_attr(feature = "serde", serde(rename = "OthrUnitOfMeasr"))]
pub othr_unit_of_measr: Max35Text,
#[yaserde(rename = "PdctQty")]
#[cfg_attr(feature = "serde", serde(rename = "PdctQty"))]
pub pdct_qty: DecimalNumber,
#[yaserde(rename = "NonAdjstdUnitPric")]
#[cfg_attr(feature = "serde", serde(rename = "NonAdjstdUnitPric"))]
pub non_adjstd_unit_pric: ImpliedCurrencyAndAmount,
#[yaserde(rename = "NonAdjstdTtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NonAdjstdTtlAmt"))]
pub non_adjstd_ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Adjstmnt")]
#[cfg_attr(feature = "serde", serde(rename = "Adjstmnt"))]
pub adjstmnt: Vec<Adjustment14>,
#[yaserde(rename = "AdjstdAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AdjstdAmt"))]
pub adjstd_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "InsrncInd")]
#[cfg_attr(feature = "serde", serde(rename = "InsrncInd"))]
pub insrnc_ind: TrueFalseIndicator,
#[yaserde(rename = "InsrncAmt")]
#[cfg_attr(feature = "serde", serde(rename = "InsrncAmt"))]
pub insrnc_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: ImpliedCurrencyAndAmount,
}
impl Validate for SaleItem5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct SenderData1 {
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max11NumericText,
#[yaserde(rename = "BizId")]
#[cfg_attr(feature = "serde", serde(rename = "BizId"))]
pub biz_id: Max15AlphaNumericText,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Iso3NumericCountryCode,
#[yaserde(rename = "BizNm")]
#[cfg_attr(feature = "serde", serde(rename = "BizNm"))]
pub biz_nm: Max35Text,
#[yaserde(rename = "LglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "LglCorpNm"))]
pub lgl_corp_nm: Max99Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "LclData")]
#[cfg_attr(feature = "serde", serde(rename = "LclData"))]
pub lcl_data: Vec<LocalData20>,
}
impl Validate for SenderData1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct SettlementService7 {
#[yaserde(rename = "PropsdTp")]
#[cfg_attr(feature = "serde", serde(rename = "PropsdTp"))]
pub propsd_tp: Max35Text,
#[yaserde(rename = "PropsdId")]
#[cfg_attr(feature = "serde", serde(rename = "PropsdId"))]
pub propsd_id: Max35Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max35Text,
#[yaserde(rename = "DfrrdDt")]
#[cfg_attr(feature = "serde", serde(rename = "DfrrdDt"))]
pub dfrrd_dt: Isodate,
#[yaserde(rename = "Dt")]
#[cfg_attr(feature = "serde", serde(rename = "Dt"))]
pub dt: Isodate,
#[yaserde(rename = "Tm")]
#[cfg_attr(feature = "serde", serde(rename = "Tm"))]
pub tm: Isotime,
#[yaserde(rename = "Prd")]
#[cfg_attr(feature = "serde", serde(rename = "Prd"))]
pub prd: Max35Text,
#[yaserde(rename = "CutOffTm")]
#[cfg_attr(feature = "serde", serde(rename = "CutOffTm"))]
pub cut_off_tm: IsodateTime,
#[yaserde(rename = "RptgNttyTp")]
#[cfg_attr(feature = "serde", serde(rename = "RptgNttyTp"))]
pub rptg_ntty_tp: Max35Text,
#[yaserde(rename = "RptgNttyId")]
#[cfg_attr(feature = "serde", serde(rename = "RptgNttyId"))]
pub rptg_ntty_id: Max35Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for SettlementService7 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ShippingData4 {
#[yaserde(rename = "InvcNb")]
#[cfg_attr(feature = "serde", serde(rename = "InvcNb"))]
pub invc_nb: Max70Text,
#[yaserde(rename = "InvcCreDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "InvcCreDtTm"))]
pub invc_cre_dt_tm: IsodateTime,
#[yaserde(rename = "SvcDscrptrCd")]
#[cfg_attr(feature = "serde", serde(rename = "SvcDscrptrCd"))]
pub svc_dscrptr_cd: Max40Text,
#[yaserde(rename = "IncntivAmt")]
#[cfg_attr(feature = "serde", serde(rename = "IncntivAmt"))]
pub incntiv_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "MiscExpnss")]
#[cfg_attr(feature = "serde", serde(rename = "MiscExpnss"))]
pub misc_expnss: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "InsrncAmt")]
#[cfg_attr(feature = "serde", serde(rename = "InsrncAmt"))]
pub insrnc_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "NetAmt")]
#[cfg_attr(feature = "serde", serde(rename = "NetAmt"))]
pub net_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "NbOfPackgs")]
#[cfg_attr(feature = "serde", serde(rename = "NbOfPackgs"))]
pub nb_of_packgs: Max6NumericText,
#[yaserde(rename = "Packg")]
#[cfg_attr(feature = "serde", serde(rename = "Packg"))]
pub packg: Vec<ShippingPackage4>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for ShippingData4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct ShippingPackage4 {
#[yaserde(rename = "TrckgNb")]
#[cfg_attr(feature = "serde", serde(rename = "TrckgNb"))]
pub trckg_nb: Max70Text,
#[yaserde(rename = "SpplrNm")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrNm"))]
pub spplr_nm: Max70Text,
#[yaserde(rename = "SpplrId")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrId"))]
pub spplr_id: Max35Text,
#[yaserde(rename = "SpplrBizNm")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrBizNm"))]
pub spplr_biz_nm: Max35Text,
#[yaserde(rename = "SpplrLglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrLglCorpNm"))]
pub spplr_lgl_corp_nm: Max99Text,
#[yaserde(rename = "SpplrAdr")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrAdr"))]
pub spplr_adr: Address4,
#[yaserde(rename = "SpplrLclData")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrLclData"))]
pub spplr_lcl_data: Vec<LocalData20>,
#[yaserde(rename = "SpplrCtct")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrCtct"))]
pub spplr_ctct: ContactBusiness2,
#[yaserde(rename = "SpplrInstrs")]
#[cfg_attr(feature = "serde", serde(rename = "SpplrInstrs"))]
pub spplr_instrs: Max350Text,
#[yaserde(rename = "PckpDt")]
#[cfg_attr(feature = "serde", serde(rename = "PckpDt"))]
pub pckp_dt: Isodate,
#[yaserde(rename = "PckpTm")]
#[cfg_attr(feature = "serde", serde(rename = "PckpTm"))]
pub pckp_tm: Isotime,
#[yaserde(rename = "DlvryNoteNb")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryNoteNb"))]
pub dlvry_note_nb: Max35Text,
#[yaserde(rename = "DlvryAdr")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryAdr"))]
pub dlvry_adr: Address4,
#[yaserde(rename = "DlvryCtct")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryCtct"))]
pub dlvry_ctct: ContactPersonal1,
#[yaserde(rename = "DlvryInstrs")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryInstrs"))]
pub dlvry_instrs: Max350Text,
#[yaserde(rename = "DlvryDt")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryDt"))]
pub dlvry_dt: Isodate,
#[yaserde(rename = "DlvryTm")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryTm"))]
pub dlvry_tm: Isotime,
#[yaserde(rename = "WghtUnit")]
#[cfg_attr(feature = "serde", serde(rename = "WghtUnit"))]
pub wght_unit: UnitOfMeasure1Code,
#[yaserde(rename = "OthrWghtUnit")]
#[cfg_attr(feature = "serde", serde(rename = "OthrWghtUnit"))]
pub othr_wght_unit: Max35Text,
#[yaserde(rename = "NbOfUnits")]
#[cfg_attr(feature = "serde", serde(rename = "NbOfUnits"))]
pub nb_of_units: DecimalNumber,
#[yaserde(rename = "Pdct")]
#[cfg_attr(feature = "serde", serde(rename = "Pdct"))]
pub pdct: Vec<Product8>,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "InsrncAmt")]
#[cfg_attr(feature = "serde", serde(rename = "InsrncAmt"))]
pub insrnc_amt: ImpliedCurrencyAndAmount,
}
impl Validate for ShippingPackage4 {}
#[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:cain.025.001.04")]
pub enum StorageLocation2Code {
#[yaserde(rename = "CAWL")]
#[cfg_attr(feature = "serde", serde(rename = "CAWL"))]
Cawl,
#[yaserde(rename = "DVCE")]
#[cfg_attr(feature = "serde", serde(rename = "DVCE"))]
Dvce,
#[yaserde(rename = "ISWL")]
#[cfg_attr(feature = "serde", serde(rename = "ISWL"))]
Iswl,
#[yaserde(rename = "ONFL")]
#[cfg_attr(feature = "serde", serde(rename = "ONFL"))]
Onfl,
#[yaserde(rename = "TPWL")]
#[cfg_attr(feature = "serde", serde(rename = "TPWL"))]
Tpwl,
__Unknown__(String),
}
impl Default for StorageLocation2Code {
fn default() -> StorageLocation2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for StorageLocation2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Tax44 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: AddendumTaxType4Code,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max35Text,
#[yaserde(rename = "Xmptn")]
#[cfg_attr(feature = "serde", serde(rename = "Xmptn"))]
pub xmptn: TrueFalseIndicator,
#[yaserde(rename = "XmptRsn")]
#[cfg_attr(feature = "serde", serde(rename = "XmptRsn"))]
pub xmpt_rsn: Max35Text,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: PercentageRate,
#[yaserde(rename = "InclInTtl")]
#[cfg_attr(feature = "serde", serde(rename = "InclInTtl"))]
pub incl_in_ttl: TrueFalseIndicator,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
}
impl Validate for Tax44 {}
#[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:cain.025.001.04")]
pub enum TaxReclaimMethod1Code {
#[yaserde(rename = "INPP")]
#[cfg_attr(feature = "serde", serde(rename = "INPP"))]
Inpp,
#[yaserde(rename = "INPS")]
#[cfg_attr(feature = "serde", serde(rename = "INPS"))]
Inps,
#[yaserde(rename = "INSU")]
#[cfg_attr(feature = "serde", serde(rename = "INSU"))]
Insu,
#[yaserde(rename = "OTHR")]
#[cfg_attr(feature = "serde", serde(rename = "OTHR"))]
Othr,
__Unknown__(String),
}
impl Default for TaxReclaimMethod1Code {
fn default() -> TaxReclaimMethod1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TaxReclaimMethod1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TelecomBillingEventAmount1 {
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max35Text,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
}
impl Validate for TelecomBillingEventAmount1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TelecomLineItemAmount1 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: TypeOfAmount25Code,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
}
impl Validate for TelecomLineItemAmount1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TelecomServices4 {
#[yaserde(rename = "CstmrAcctNb")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrAcctNb"))]
pub cstmr_acct_nb: Max35Text,
#[yaserde(rename = "CstmrNm")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrNm"))]
pub cstmr_nm: Max105Text,
#[yaserde(rename = "CstmrPhne")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrPhne"))]
pub cstmr_phne: PhoneNumber,
#[yaserde(rename = "BllgStart")]
#[cfg_attr(feature = "serde", serde(rename = "BllgStart"))]
pub bllg_start: Isodate,
#[yaserde(rename = "BllgEnd")]
#[cfg_attr(feature = "serde", serde(rename = "BllgEnd"))]
pub bllg_end: Isodate,
#[yaserde(rename = "BllgEvt")]
#[cfg_attr(feature = "serde", serde(rename = "BllgEvt"))]
pub bllg_evt: Vec<TelecomBillingEventAmount1>,
#[yaserde(rename = "TtlTax")]
#[cfg_attr(feature = "serde", serde(rename = "TtlTax"))]
pub ttl_tax: Vec<Tax44>,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "LineItm")]
#[cfg_attr(feature = "serde", serde(rename = "LineItm"))]
pub line_itm: Vec<TelecomServicesLineItem4>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for TelecomServices4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TelecomServicesLineItem4 {
#[yaserde(rename = "StartDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "StartDtTm"))]
pub start_dt_tm: Isodate,
#[yaserde(rename = "TmPrd")]
#[cfg_attr(feature = "serde", serde(rename = "TmPrd"))]
pub tm_prd: Max35Text,
#[yaserde(rename = "Drtn")]
#[cfg_attr(feature = "serde", serde(rename = "Drtn"))]
pub drtn: Isotime,
#[yaserde(rename = "CallFrTp")]
#[cfg_attr(feature = "serde", serde(rename = "CallFrTp"))]
pub call_fr_tp: TelephonyCallType2Code,
#[yaserde(rename = "CallFrPhne")]
#[cfg_attr(feature = "serde", serde(rename = "CallFrPhne"))]
pub call_fr_phne: PhoneNumber,
#[yaserde(rename = "CallFrCity")]
#[cfg_attr(feature = "serde", serde(rename = "CallFrCity"))]
pub call_fr_city: Max35Text,
#[yaserde(rename = "CallFrCtrySubDvsnMjr")]
#[cfg_attr(feature = "serde", serde(rename = "CallFrCtrySubDvsnMjr"))]
pub call_fr_ctry_sub_dvsn_mjr: IsocountrySubDivisionCode,
#[yaserde(rename = "CallFrCtrySubDvsnMnr")]
#[cfg_attr(feature = "serde", serde(rename = "CallFrCtrySubDvsnMnr"))]
pub call_fr_ctry_sub_dvsn_mnr: IsocountrySubDivisionCode,
#[yaserde(rename = "CallFrCtry")]
#[cfg_attr(feature = "serde", serde(rename = "CallFrCtry"))]
pub call_fr_ctry: Isomax3ACountryCode,
#[yaserde(rename = "CallToTp")]
#[cfg_attr(feature = "serde", serde(rename = "CallToTp"))]
pub call_to_tp: TelephonyCallType2Code,
#[yaserde(rename = "CallToPhne")]
#[cfg_attr(feature = "serde", serde(rename = "CallToPhne"))]
pub call_to_phne: PhoneNumber,
#[yaserde(rename = "CallToCity")]
#[cfg_attr(feature = "serde", serde(rename = "CallToCity"))]
pub call_to_city: Max35Text,
#[yaserde(rename = "CallToCtrySubDvsnMjr")]
#[cfg_attr(feature = "serde", serde(rename = "CallToCtrySubDvsnMjr"))]
pub call_to_ctry_sub_dvsn_mjr: IsocountrySubDivisionCode,
#[yaserde(rename = "CallToCtrySubDvsnMnr")]
#[cfg_attr(feature = "serde", serde(rename = "CallToCtrySubDvsnMnr"))]
pub call_to_ctry_sub_dvsn_mnr: IsocountrySubDivisionCode,
#[yaserde(rename = "CallToCtry")]
#[cfg_attr(feature = "serde", serde(rename = "CallToCtry"))]
pub call_to_ctry: Isomax3ACountryCode,
#[yaserde(rename = "Chrg")]
#[cfg_attr(feature = "serde", serde(rename = "Chrg"))]
pub chrg: Vec<TelecomLineItemAmount1>,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Desc")]
#[cfg_attr(feature = "serde", serde(rename = "Desc"))]
pub desc: Max256Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for TelecomServicesLineItem4 {}
#[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:cain.025.001.04")]
pub enum TelephonyCallType2Code {
#[yaserde(rename = "VCML")]
#[cfg_attr(feature = "serde", serde(rename = "VCML"))]
Vcml,
#[yaserde(rename = "TFPC")]
#[cfg_attr(feature = "serde", serde(rename = "TFPC"))]
Tfpc,
#[yaserde(rename = "PAGE")]
#[cfg_attr(feature = "serde", serde(rename = "PAGE"))]
Page,
#[yaserde(rename = "OGPC")]
#[cfg_attr(feature = "serde", serde(rename = "OGPC"))]
Ogpc,
#[yaserde(rename = "OTCL")]
#[cfg_attr(feature = "serde", serde(rename = "OTCL"))]
Otcl,
#[yaserde(rename = "ICPC")]
#[cfg_attr(feature = "serde", serde(rename = "ICPC"))]
Icpc,
__Unknown__(String),
}
impl Default for TelephonyCallType2Code {
fn default() -> TelephonyCallType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TelephonyCallType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TemporaryServiceChargeRate1 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: TemporaryServicesCharge2Code,
#[yaserde(rename = "Rate")]
#[cfg_attr(feature = "serde", serde(rename = "Rate"))]
pub rate: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Hrs")]
#[cfg_attr(feature = "serde", serde(rename = "Hrs"))]
pub hrs: Max6NumericText,
}
impl Validate for TemporaryServiceChargeRate1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TemporaryServices4 {
#[yaserde(rename = "CpnyNm")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyNm"))]
pub cpny_nm: Max70Text,
#[yaserde(rename = "CpnyDept")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyDept"))]
pub cpny_dept: Max70Text,
#[yaserde(rename = "CpnyId")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyId"))]
pub cpny_id: Max35Text,
#[yaserde(rename = "CpnyBizNm")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyBizNm"))]
pub cpny_biz_nm: Max35Text,
#[yaserde(rename = "CpnyLglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyLglCorpNm"))]
pub cpny_lgl_corp_nm: Max99Text,
#[yaserde(rename = "CpnyAdr")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyAdr"))]
pub cpny_adr: Address4,
#[yaserde(rename = "CpnyLclData")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyLclData"))]
pub cpny_lcl_data: Vec<LocalData20>,
#[yaserde(rename = "CpnySprvsr")]
#[cfg_attr(feature = "serde", serde(rename = "CpnySprvsr"))]
pub cpny_sprvsr: Max70Text,
#[yaserde(rename = "MplyeePrsnlId")]
#[cfg_attr(feature = "serde", serde(rename = "MplyeePrsnlId"))]
pub mplyee_prsnl_id: Max35Text,
#[yaserde(rename = "MplyeeId")]
#[cfg_attr(feature = "serde", serde(rename = "MplyeeId"))]
pub mplyee_id: PhoneNumber,
#[yaserde(rename = "MplyeeNm")]
#[cfg_attr(feature = "serde", serde(rename = "MplyeeNm"))]
pub mplyee_nm: Max70Text,
#[yaserde(rename = "MplyeePrfssnlLvl")]
#[cfg_attr(feature = "serde", serde(rename = "MplyeePrfssnlLvl"))]
pub mplyee_prfssnl_lvl: Max35Text,
#[yaserde(rename = "JobCd")]
#[cfg_attr(feature = "serde", serde(rename = "JobCd"))]
pub job_cd: Max35Text,
#[yaserde(rename = "JobDesc")]
#[cfg_attr(feature = "serde", serde(rename = "JobDesc"))]
pub job_desc: Max256Text,
#[yaserde(rename = "JobStartDt")]
#[cfg_attr(feature = "serde", serde(rename = "JobStartDt"))]
pub job_start_dt: Isodate,
#[yaserde(rename = "JobDrtn")]
#[cfg_attr(feature = "serde", serde(rename = "JobDrtn"))]
pub job_drtn: Max5NumericText,
#[yaserde(rename = "JobEndDt")]
#[cfg_attr(feature = "serde", serde(rename = "JobEndDt"))]
pub job_end_dt: Isodate,
#[yaserde(rename = "FlatRateInd")]
#[cfg_attr(feature = "serde", serde(rename = "FlatRateInd"))]
pub flat_rate_ind: TrueFalseIndicator,
#[yaserde(rename = "DscntAmt")]
#[cfg_attr(feature = "serde", serde(rename = "DscntAmt"))]
pub dscnt_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "TmSheet")]
#[cfg_attr(feature = "serde", serde(rename = "TmSheet"))]
pub tm_sheet: Max35Text,
#[yaserde(rename = "WkEndg")]
#[cfg_attr(feature = "serde", serde(rename = "WkEndg"))]
pub wk_endg: Isodate,
#[yaserde(rename = "ChrgRate")]
#[cfg_attr(feature = "serde", serde(rename = "ChrgRate"))]
pub chrg_rate: Vec<TemporaryServiceChargeRate1>,
#[yaserde(rename = "MiscExpnss")]
#[cfg_attr(feature = "serde", serde(rename = "MiscExpnss"))]
pub misc_expnss: Vec<Amount13>,
#[yaserde(rename = "SbttlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "SbttlAmt"))]
pub sbttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "TtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "TtlAmt"))]
pub ttl_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for TemporaryServices4 {}
#[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:cain.025.001.04")]
pub enum TemporaryServicesCharge2Code {
#[yaserde(rename = "WKND")]
#[cfg_attr(feature = "serde", serde(rename = "WKND"))]
Wknd,
#[yaserde(rename = "REGL")]
#[cfg_attr(feature = "serde", serde(rename = "REGL"))]
Regl,
#[yaserde(rename = "OVRT")]
#[cfg_attr(feature = "serde", serde(rename = "OVRT"))]
Ovrt,
#[yaserde(rename = "ONCL")]
#[cfg_attr(feature = "serde", serde(rename = "ONCL"))]
Oncl,
#[yaserde(rename = "NITE")]
#[cfg_attr(feature = "serde", serde(rename = "NITE"))]
Nite,
#[yaserde(rename = "HOLI")]
#[cfg_attr(feature = "serde", serde(rename = "HOLI"))]
Holi,
#[yaserde(rename = "HAZD")]
#[cfg_attr(feature = "serde", serde(rename = "HAZD"))]
Hazd,
__Unknown__(String),
}
impl Default for TemporaryServicesCharge2Code {
fn default() -> TemporaryServicesCharge2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TemporaryServicesCharge2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Token4 {
#[yaserde(rename = "PmtTkn")]
#[cfg_attr(feature = "serde", serde(rename = "PmtTkn"))]
pub pmt_tkn: Max19NumericText,
#[yaserde(rename = "TknXpryDt")]
#[cfg_attr(feature = "serde", serde(rename = "TknXpryDt"))]
pub tkn_xpry_dt: IsoyearMonth,
#[yaserde(rename = "TknRqstrId")]
#[cfg_attr(feature = "serde", serde(rename = "TknRqstrId"))]
pub tkn_rqstr_id: Max11NumericText,
#[yaserde(rename = "TknAssrncData")]
#[cfg_attr(feature = "serde", serde(rename = "TknAssrncData"))]
pub tkn_assrnc_data: Max140Text,
#[yaserde(rename = "TknAssrncMtd")]
#[cfg_attr(feature = "serde", serde(rename = "TknAssrncMtd"))]
pub tkn_assrnc_mtd: Max2NumericText,
#[yaserde(rename = "TknRefId")]
#[cfg_attr(feature = "serde", serde(rename = "TknRefId"))]
pub tkn_ref_id: Max35Text,
}
impl Validate for Token4 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Token5 {
#[yaserde(rename = "PmtTkn")]
#[cfg_attr(feature = "serde", serde(rename = "PmtTkn"))]
pub pmt_tkn: Max19NumericText,
#[yaserde(rename = "TknTp")]
#[cfg_attr(feature = "serde", serde(rename = "TknTp"))]
pub tkn_tp: Max3Text,
#[yaserde(rename = "TknXpryDt")]
#[cfg_attr(feature = "serde", serde(rename = "TknXpryDt"))]
pub tkn_xpry_dt: IsoyearMonth,
#[yaserde(rename = "TknRqstrId")]
#[cfg_attr(feature = "serde", serde(rename = "TknRqstrId"))]
pub tkn_rqstr_id: Max11NumericText,
#[yaserde(rename = "TknAssrncData")]
#[cfg_attr(feature = "serde", serde(rename = "TknAssrncData"))]
pub tkn_assrnc_data: Max140Text,
#[yaserde(rename = "TknAssrncMtd")]
#[cfg_attr(feature = "serde", serde(rename = "TknAssrncMtd"))]
pub tkn_assrnc_mtd: Max2NumericText,
#[yaserde(rename = "TknRefId")]
#[cfg_attr(feature = "serde", serde(rename = "TknRefId"))]
pub tkn_ref_id: Max35Text,
#[yaserde(rename = "TknInittdInd")]
#[cfg_attr(feature = "serde", serde(rename = "TknInittdInd"))]
pub tkn_inittd_ind: TrueFalseIndicator,
#[yaserde(rename = "StorgLctn")]
#[cfg_attr(feature = "serde", serde(rename = "StorgLctn"))]
pub storg_lctn: StorageLocation2Code,
#[yaserde(rename = "PrtcnMtd")]
#[cfg_attr(feature = "serde", serde(rename = "PrtcnMtd"))]
pub prtcn_mtd: ProtectionMethod2Code,
#[yaserde(rename = "NonPmt")]
#[cfg_attr(feature = "serde", serde(rename = "NonPmt"))]
pub non_pmt: TrueFalseIndicator,
#[yaserde(rename = "TknRqstrNm")]
#[cfg_attr(feature = "serde", serde(rename = "TknRqstrNm"))]
pub tkn_rqstr_nm: Max70Text,
#[yaserde(rename = "UpdtdChanl")]
#[cfg_attr(feature = "serde", serde(rename = "UpdtdChanl"))]
pub updtd_chanl: Max35Text,
#[yaserde(rename = "Sts")]
#[cfg_attr(feature = "serde", serde(rename = "Sts"))]
pub sts: Max35Text,
#[yaserde(rename = "TknActvtnDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "TknActvtnDtTm"))]
pub tkn_actvtn_dt_tm: IsodateTime,
#[yaserde(rename = "OrgnlTkn")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlTkn"))]
pub orgnl_tkn: Token4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for Token5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TransactionIdentification62 {
#[yaserde(rename = "PurchsIdrTp")]
#[cfg_attr(feature = "serde", serde(rename = "PurchsIdrTp"))]
pub purchs_idr_tp: PurchaseIdentifierType3Code,
#[yaserde(rename = "PurchsIdr")]
#[cfg_attr(feature = "serde", serde(rename = "PurchsIdr"))]
pub purchs_idr: Max99Text,
#[yaserde(rename = "TrnsmssnDtTm")]
#[cfg_attr(feature = "serde", serde(rename = "TrnsmssnDtTm"))]
pub trnsmssn_dt_tm: IsodateTime,
#[yaserde(rename = "SysTracAudtNb")]
#[cfg_attr(feature = "serde", serde(rename = "SysTracAudtNb"))]
pub sys_trac_audt_nb: Max12NumericText,
#[yaserde(rename = "RtrvlRefNb")]
#[cfg_attr(feature = "serde", serde(rename = "RtrvlRefNb"))]
pub rtrvl_ref_nb: Exact12Text,
#[yaserde(rename = "LifeCyclSpprt")]
#[cfg_attr(feature = "serde", serde(rename = "LifeCyclSpprt"))]
pub life_cycl_spprt: LifeCycleSupport1Code,
#[yaserde(rename = "LifeCyclId")]
#[cfg_attr(feature = "serde", serde(rename = "LifeCyclId"))]
pub life_cycl_id: Exact15Text,
#[yaserde(rename = "AuthstnSeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "AuthstnSeqNb"))]
pub authstn_seq_nb: Exact2NumericText,
#[yaserde(rename = "PresntmntSeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "PresntmntSeqNb"))]
pub presntmnt_seq_nb: Exact2NumericText,
#[yaserde(rename = "PresntmntSeqCnt")]
#[cfg_attr(feature = "serde", serde(rename = "PresntmntSeqCnt"))]
pub presntmnt_seq_cnt: Exact2NumericText,
#[yaserde(rename = "AuthntcnTkn")]
#[cfg_attr(feature = "serde", serde(rename = "AuthntcnTkn"))]
pub authntcn_tkn: Max35Text,
#[yaserde(rename = "AcqrrRefData")]
#[cfg_attr(feature = "serde", serde(rename = "AcqrrRefData"))]
pub acqrr_ref_data: Max140Text,
#[yaserde(rename = "AcqrrRefNb")]
#[cfg_attr(feature = "serde", serde(rename = "AcqrrRefNb"))]
pub acqrr_ref_nb: Max23NumericText,
#[yaserde(rename = "IssrRefData")]
#[cfg_attr(feature = "serde", serde(rename = "IssrRefData"))]
pub issr_ref_data: Max1000Text,
#[yaserde(rename = "AssoctdDataRef")]
#[cfg_attr(feature = "serde", serde(rename = "AssoctdDataRef"))]
pub assoctd_data_ref: Max70Text,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for TransactionIdentification62 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TransactionSpecificData1 {
#[yaserde(rename = "Sale")]
#[cfg_attr(feature = "serde", serde(rename = "Sale"))]
pub sale: Sale4,
#[yaserde(rename = "Fleet")]
#[cfg_attr(feature = "serde", serde(rename = "Fleet"))]
pub fleet: FleetData7,
#[yaserde(rename = "Invc")]
#[cfg_attr(feature = "serde", serde(rename = "Invc"))]
pub invc: Invoice4,
#[yaserde(rename = "TrvlAgcy")]
#[cfg_attr(feature = "serde", serde(rename = "TrvlAgcy"))]
pub trvl_agcy: Vec<TravelAgency5>,
#[yaserde(rename = "PssngrTrnsprt")]
#[cfg_attr(feature = "serde", serde(rename = "PssngrTrnsprt"))]
pub pssngr_trnsprt: PassengerTransport4,
#[yaserde(rename = "VhclRntl")]
#[cfg_attr(feature = "serde", serde(rename = "VhclRntl"))]
pub vhcl_rntl: Vec<VehicleRentalService4>,
#[yaserde(rename = "Ldgg")]
#[cfg_attr(feature = "serde", serde(rename = "Ldgg"))]
pub ldgg: Vec<Lodging5>,
#[yaserde(rename = "ShppgData")]
#[cfg_attr(feature = "serde", serde(rename = "ShppgData"))]
pub shppg_data: ShippingData4,
#[yaserde(rename = "TelecomSvcs")]
#[cfg_attr(feature = "serde", serde(rename = "TelecomSvcs"))]
pub telecom_svcs: TelecomServices4,
#[yaserde(rename = "TempSvcs")]
#[cfg_attr(feature = "serde", serde(rename = "TempSvcs"))]
pub temp_svcs: Vec<TemporaryServices4>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for TransactionSpecificData1 {}
#[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:cain.025.001.04")]
pub enum TransportType2Code {
#[yaserde(rename = "AIRR")]
#[cfg_attr(feature = "serde", serde(rename = "AIRR"))]
Airr,
#[yaserde(rename = "BUSS")]
#[cfg_attr(feature = "serde", serde(rename = "BUSS"))]
Buss,
#[yaserde(rename = "RAIL")]
#[cfg_attr(feature = "serde", serde(rename = "RAIL"))]
Rail,
#[yaserde(rename = "SHIP")]
#[cfg_attr(feature = "serde", serde(rename = "SHIP"))]
Ship,
__Unknown__(String),
}
impl Default for TransportType2Code {
fn default() -> TransportType2Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TransportType2Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TravelAgency5 {
#[yaserde(rename = "Cd")]
#[cfg_attr(feature = "serde", serde(rename = "Cd"))]
pub cd: Max35Text,
#[yaserde(rename = "Assgnr")]
#[cfg_attr(feature = "serde", serde(rename = "Assgnr"))]
pub assgnr: Max35Text,
#[yaserde(rename = "IATACd")]
#[cfg_attr(feature = "serde", serde(rename = "IATACd"))]
pub iata_cd: Max35Text,
#[yaserde(rename = "Nm")]
#[cfg_attr(feature = "serde", serde(rename = "Nm"))]
pub nm: Max70Text,
#[yaserde(rename = "ShrtNm")]
#[cfg_attr(feature = "serde", serde(rename = "ShrtNm"))]
pub shrt_nm: Max35Text,
#[yaserde(rename = "Adr")]
#[cfg_attr(feature = "serde", serde(rename = "Adr"))]
pub adr: Address4,
#[yaserde(rename = "Ctct")]
#[cfg_attr(feature = "serde", serde(rename = "Ctct"))]
pub ctct: ContactBusiness2,
#[yaserde(rename = "TrvlPackg")]
#[cfg_attr(feature = "serde", serde(rename = "TrvlPackg"))]
pub trvl_packg: Vec<TravelAgencyPackage2>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for TravelAgency5 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TravelAgencyPackage2 {
#[yaserde(rename = "RsvatnNb")]
#[cfg_attr(feature = "serde", serde(rename = "RsvatnNb"))]
pub rsvatn_nb: Max35Text,
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max70Text,
#[yaserde(rename = "NbInPty")]
#[cfg_attr(feature = "serde", serde(rename = "NbInPty"))]
pub nb_in_pty: Max10NumericText,
#[yaserde(rename = "CstmrRef")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrRef"))]
pub cstmr_ref: Vec<CustomerReference1>,
#[yaserde(rename = "DataSrc")]
#[cfg_attr(feature = "serde", serde(rename = "DataSrc"))]
pub data_src: Max35Text,
#[yaserde(rename = "DlvryOrdrNb")]
#[cfg_attr(feature = "serde", serde(rename = "DlvryOrdrNb"))]
pub dlvry_ordr_nb: Max35Text,
#[yaserde(rename = "CdtCardSlipNb")]
#[cfg_attr(feature = "serde", serde(rename = "CdtCardSlipNb"))]
pub cdt_card_slip_nb: Max35Text,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "InsrncAmt")]
#[cfg_attr(feature = "serde", serde(rename = "InsrncAmt"))]
pub insrnc_amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "Fee")]
#[cfg_attr(feature = "serde", serde(rename = "Fee"))]
pub fee: ImpliedCurrencyAndAmount,
}
impl Validate for TravelAgencyPackage2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TravelDocument3 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: OfficialDocumentType2Code,
#[yaserde(rename = "Form")]
#[cfg_attr(feature = "serde", serde(rename = "Form"))]
pub form: PresentationMedium2Code,
#[yaserde(rename = "Id")]
#[cfg_attr(feature = "serde", serde(rename = "Id"))]
pub id: Max70Text,
#[yaserde(rename = "Assgnr")]
#[cfg_attr(feature = "serde", serde(rename = "Assgnr"))]
pub assgnr: Max70Text,
#[yaserde(rename = "IssncDt")]
#[cfg_attr(feature = "serde", serde(rename = "IssncDt"))]
pub issnc_dt: Isodate,
#[yaserde(rename = "XprtnDt")]
#[cfg_attr(feature = "serde", serde(rename = "XprtnDt"))]
pub xprtn_dt: Isodate,
#[yaserde(rename = "Ctry")]
#[cfg_attr(feature = "serde", serde(rename = "Ctry"))]
pub ctry: Isomax3ACountryCode,
}
impl Validate for TravelDocument3 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct TripLeg4 {
#[yaserde(rename = "SeqNb")]
#[cfg_attr(feature = "serde", serde(rename = "SeqNb"))]
pub seq_nb: Max35NumericText,
#[yaserde(rename = "TcktNb")]
#[cfg_attr(feature = "serde", serde(rename = "TcktNb"))]
pub tckt_nb: Max35Text,
#[yaserde(rename = "TcktIssr")]
#[cfg_attr(feature = "serde", serde(rename = "TcktIssr"))]
pub tckt_issr: Max35Text,
#[yaserde(rename = "TcktIsseDt")]
#[cfg_attr(feature = "serde", serde(rename = "TcktIsseDt"))]
pub tckt_isse_dt: Isodate,
#[yaserde(rename = "TcktIsseLctn")]
#[cfg_attr(feature = "serde", serde(rename = "TcktIsseLctn"))]
pub tckt_isse_lctn: Max140Text,
#[yaserde(rename = "CnjnctnTcktNb")]
#[cfg_attr(feature = "serde", serde(rename = "CnjnctnTcktNb"))]
pub cnjnctn_tckt_nb: Max35Text,
#[yaserde(rename = "RstrctdTckt")]
#[cfg_attr(feature = "serde", serde(rename = "RstrctdTckt"))]
pub rstrctd_tckt: TrueFalseIndicator,
#[yaserde(rename = "OpnTckt")]
#[cfg_attr(feature = "serde", serde(rename = "OpnTckt"))]
pub opn_tckt: TrueFalseIndicator,
#[yaserde(rename = "TcktRstrctns")]
#[cfg_attr(feature = "serde", serde(rename = "TcktRstrctns"))]
pub tckt_rstrctns: Max70Text,
#[yaserde(rename = "XchgdTckt")]
#[cfg_attr(feature = "serde", serde(rename = "XchgdTckt"))]
pub xchgd_tckt: TrueFalseIndicator,
#[yaserde(rename = "XchgdTcktNb")]
#[cfg_attr(feature = "serde", serde(rename = "XchgdTcktNb"))]
pub xchgd_tckt_nb: Max35Text,
#[yaserde(rename = "RcrdLctrNb")]
#[cfg_attr(feature = "serde", serde(rename = "RcrdLctrNb"))]
pub rcrd_lctr_nb: Max35Text,
#[yaserde(rename = "RsvatnSys")]
#[cfg_attr(feature = "serde", serde(rename = "RsvatnSys"))]
pub rsvatn_sys: Max4Text,
#[yaserde(rename = "RsvatnNb")]
#[cfg_attr(feature = "serde", serde(rename = "RsvatnNb"))]
pub rsvatn_nb: Max35Text,
#[yaserde(rename = "OrgnlRsvatnSys")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlRsvatnSys"))]
pub orgnl_rsvatn_sys: Max4Text,
#[yaserde(rename = "OrgnlRsvatnNb")]
#[cfg_attr(feature = "serde", serde(rename = "OrgnlRsvatnNb"))]
pub orgnl_rsvatn_nb: Max35Text,
#[yaserde(rename = "Doc")]
#[cfg_attr(feature = "serde", serde(rename = "Doc"))]
pub doc: AticalaxProcessing,
#[yaserde(rename = "TrnsprtTp")]
#[cfg_attr(feature = "serde", serde(rename = "TrnsprtTp"))]
pub trnsprt_tp: TransportType2Code,
#[yaserde(rename = "CmmdtyCd")]
#[cfg_attr(feature = "serde", serde(rename = "CmmdtyCd"))]
pub cmmdty_cd: Max4Text,
#[yaserde(rename = "CrrierNm")]
#[cfg_attr(feature = "serde", serde(rename = "CrrierNm"))]
pub crrier_nm: Max70Text,
#[yaserde(rename = "CrrierCd")]
#[cfg_attr(feature = "serde", serde(rename = "CrrierCd"))]
pub crrier_cd: Max35Text,
#[yaserde(rename = "IATACd")]
#[cfg_attr(feature = "serde", serde(rename = "IATACd"))]
pub iata_cd: Max35Text,
#[yaserde(rename = "RouteNb")]
#[cfg_attr(feature = "serde", serde(rename = "RouteNb"))]
pub route_nb: Max35Text,
#[yaserde(rename = "SvcClss")]
#[cfg_attr(feature = "serde", serde(rename = "SvcClss"))]
pub svc_clss: Max35Text,
#[yaserde(rename = "Dprture")]
#[cfg_attr(feature = "serde", serde(rename = "Dprture"))]
pub dprture: DepartureOrArrival1,
#[yaserde(rename = "Arrvl")]
#[cfg_attr(feature = "serde", serde(rename = "Arrvl"))]
pub arrvl: DepartureOrArrival1,
#[yaserde(rename = "Drtn")]
#[cfg_attr(feature = "serde", serde(rename = "Drtn"))]
pub drtn: Max4NumericText,
#[yaserde(rename = "StopOver")]
#[cfg_attr(feature = "serde", serde(rename = "StopOver"))]
pub stop_over: TrueFalseIndicator,
#[yaserde(rename = "NonDrctRouteCd")]
#[cfg_attr(feature = "serde", serde(rename = "NonDrctRouteCd"))]
pub non_drct_route_cd: Max35Text,
#[yaserde(rename = "FairBsisCd")]
#[cfg_attr(feature = "serde", serde(rename = "FairBsisCd"))]
pub fair_bsis_cd: Max35Text,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: Vec<AmountAndTax1>,
#[yaserde(rename = "CdtRsnCd")]
#[cfg_attr(feature = "serde", serde(rename = "CdtRsnCd"))]
pub cdt_rsn_cd: Max35Text,
#[yaserde(rename = "PrcdrId")]
#[cfg_attr(feature = "serde", serde(rename = "PrcdrId"))]
pub prcdr_id: Max35Text,
#[yaserde(rename = "LltyPrgrmm")]
#[cfg_attr(feature = "serde", serde(rename = "LltyPrgrmm"))]
pub llty_prgrmm: LoyaltyProgramme4,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for TripLeg4 {}
#[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(PartialEq, Debug, Clone, YaSerialize, YaDeserialize)]#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub enum TypeOfAmount22Code {
#[yaserde(rename = "ACTL")]
#[cfg_attr(feature = "serde", serde(rename = "ACTL"))]
Actl,
#[yaserde(rename = "DFLT")]
#[cfg_attr(feature = "serde", serde(rename = "DFLT"))]
Dflt,
#[yaserde(rename = "DPST")]
#[cfg_attr(feature = "serde", serde(rename = "DPST"))]
Dpst,
#[yaserde(rename = "ESTM")]
#[cfg_attr(feature = "serde", serde(rename = "ESTM"))]
Estm,
#[yaserde(rename = "MAXI")]
#[cfg_attr(feature = "serde", serde(rename = "MAXI"))]
Maxi,
#[yaserde(rename = "PRXY")]
#[cfg_attr(feature = "serde", serde(rename = "PRXY"))]
Prxy,
#[yaserde(rename = "RESD")]
#[cfg_attr(feature = "serde", serde(rename = "RESD"))]
Resd,
__Unknown__(String),
}
impl Default for TypeOfAmount22Code {
fn default() -> TypeOfAmount22Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TypeOfAmount22Code {}
#[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:cain.025.001.04")]
pub enum TypeOfAmount24Code {
#[yaserde(rename = "AMTH")]
#[cfg_attr(feature = "serde", serde(rename = "AMTH"))]
Amth,
#[yaserde(rename = "BAGG")]
#[cfg_attr(feature = "serde", serde(rename = "BAGG"))]
Bagg,
#[yaserde(rename = "CARG")]
#[cfg_attr(feature = "serde", serde(rename = "CARG"))]
Carg,
#[yaserde(rename = "CHTC")]
#[cfg_attr(feature = "serde", serde(rename = "CHTC"))]
Chtc,
#[yaserde(rename = "CLUB")]
#[cfg_attr(feature = "serde", serde(rename = "CLUB"))]
Club,
#[yaserde(rename = "DUTY")]
#[cfg_attr(feature = "serde", serde(rename = "DUTY"))]
Duty,
#[yaserde(rename = "EXTK")]
#[cfg_attr(feature = "serde", serde(rename = "EXTK"))]
Extk,
#[yaserde(rename = "EXTF")]
#[cfg_attr(feature = "serde", serde(rename = "EXTF"))]
Extf,
#[yaserde(rename = "EXTR")]
#[cfg_attr(feature = "serde", serde(rename = "EXTR"))]
Extr,
#[yaserde(rename = "FARE")]
#[cfg_attr(feature = "serde", serde(rename = "FARE"))]
Fare,
#[yaserde(rename = "FDBV")]
#[cfg_attr(feature = "serde", serde(rename = "FDBV"))]
Fdbv,
#[yaserde(rename = "INSU")]
#[cfg_attr(feature = "serde", serde(rename = "INSU"))]
Insu,
#[yaserde(rename = "MISC")]
#[cfg_attr(feature = "serde", serde(rename = "MISC"))]
Misc,
#[yaserde(rename = "PETC")]
#[cfg_attr(feature = "serde", serde(rename = "PETC"))]
Petc,
#[yaserde(rename = "PHNE")]
#[cfg_attr(feature = "serde", serde(rename = "PHNE"))]
Phne,
#[yaserde(rename = "PRPY")]
#[cfg_attr(feature = "serde", serde(rename = "PRPY"))]
Prpy,
#[yaserde(rename = "TOTL")]
#[cfg_attr(feature = "serde", serde(rename = "TOTL"))]
Totl,
#[yaserde(rename = "TOUR")]
#[cfg_attr(feature = "serde", serde(rename = "TOUR"))]
Tour,
#[yaserde(rename = "UPGD")]
#[cfg_attr(feature = "serde", serde(rename = "UPGD"))]
Upgd,
#[yaserde(rename = "TKDL")]
#[cfg_attr(feature = "serde", serde(rename = "TKDL"))]
Tkdl,
#[yaserde(rename = "FEES")]
#[cfg_attr(feature = "serde", serde(rename = "FEES"))]
Fees,
__Unknown__(String),
}
impl Default for TypeOfAmount24Code {
fn default() -> TypeOfAmount24Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TypeOfAmount24Code {}
#[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:cain.025.001.04")]
pub enum TypeOfAmount25Code {
#[yaserde(rename = "CONN")]
#[cfg_attr(feature = "serde", serde(rename = "CONN"))]
Conn,
#[yaserde(rename = "INSU")]
#[cfg_attr(feature = "serde", serde(rename = "INSU"))]
Insu,
#[yaserde(rename = "LNDS")]
#[cfg_attr(feature = "serde", serde(rename = "LNDS"))]
Lnds,
#[yaserde(rename = "MISC")]
#[cfg_attr(feature = "serde", serde(rename = "MISC"))]
Misc,
#[yaserde(rename = "USGE")]
#[cfg_attr(feature = "serde", serde(rename = "USGE"))]
Usge,
__Unknown__(String),
}
impl Default for TypeOfAmount25Code {
fn default() -> TypeOfAmount25Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for TypeOfAmount25Code {}
#[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:cain.025.001.04")]
pub enum UnitOfMeasure10Code {
#[yaserde(rename = "KMET")]
#[cfg_attr(feature = "serde", serde(rename = "KMET"))]
Kmet,
#[yaserde(rename = "MILE")]
#[cfg_attr(feature = "serde", serde(rename = "MILE"))]
Mile,
__Unknown__(String),
}
impl Default for UnitOfMeasure10Code {
fn default() -> UnitOfMeasure10Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for UnitOfMeasure10Code {}
#[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:cain.025.001.04")]
pub enum UnitOfMeasure14Code {
#[yaserde(rename = "KILO")]
#[cfg_attr(feature = "serde", serde(rename = "KILO"))]
Kilo,
#[yaserde(rename = "PIEC")]
#[cfg_attr(feature = "serde", serde(rename = "PIEC"))]
Piec,
#[yaserde(rename = "TONS")]
#[cfg_attr(feature = "serde", serde(rename = "TONS"))]
Tons,
#[yaserde(rename = "METR")]
#[cfg_attr(feature = "serde", serde(rename = "METR"))]
Metr,
#[yaserde(rename = "INCH")]
#[cfg_attr(feature = "serde", serde(rename = "INCH"))]
Inch,
#[yaserde(rename = "YARD")]
#[cfg_attr(feature = "serde", serde(rename = "YARD"))]
Yard,
#[yaserde(rename = "GBGA")]
#[cfg_attr(feature = "serde", serde(rename = "GBGA"))]
Gbga,
#[yaserde(rename = "GRAM")]
#[cfg_attr(feature = "serde", serde(rename = "GRAM"))]
Gram,
#[yaserde(rename = "CMET")]
#[cfg_attr(feature = "serde", serde(rename = "CMET"))]
Cmet,
#[yaserde(rename = "SMET")]
#[cfg_attr(feature = "serde", serde(rename = "SMET"))]
Smet,
#[yaserde(rename = "FOOT")]
#[cfg_attr(feature = "serde", serde(rename = "FOOT"))]
Foot,
#[yaserde(rename = "MILE")]
#[cfg_attr(feature = "serde", serde(rename = "MILE"))]
Mile,
#[yaserde(rename = "SQIN")]
#[cfg_attr(feature = "serde", serde(rename = "SQIN"))]
Sqin,
#[yaserde(rename = "SQFO")]
#[cfg_attr(feature = "serde", serde(rename = "SQFO"))]
Sqfo,
#[yaserde(rename = "SQMI")]
#[cfg_attr(feature = "serde", serde(rename = "SQMI"))]
Sqmi,
#[yaserde(rename = "GBOU")]
#[cfg_attr(feature = "serde", serde(rename = "GBOU"))]
Gbou,
#[yaserde(rename = "USOU")]
#[cfg_attr(feature = "serde", serde(rename = "USOU"))]
Usou,
#[yaserde(rename = "GBPI")]
#[cfg_attr(feature = "serde", serde(rename = "GBPI"))]
Gbpi,
#[yaserde(rename = "USPI")]
#[cfg_attr(feature = "serde", serde(rename = "USPI"))]
Uspi,
#[yaserde(rename = "GBQA")]
#[cfg_attr(feature = "serde", serde(rename = "GBQA"))]
Gbqa,
#[yaserde(rename = "USQA")]
#[cfg_attr(feature = "serde", serde(rename = "USQA"))]
Usqa,
#[yaserde(rename = "USGA")]
#[cfg_attr(feature = "serde", serde(rename = "USGA"))]
Usga,
#[yaserde(rename = "MMET")]
#[cfg_attr(feature = "serde", serde(rename = "MMET"))]
Mmet,
#[yaserde(rename = "KMET")]
#[cfg_attr(feature = "serde", serde(rename = "KMET"))]
Kmet,
#[yaserde(rename = "SQYA")]
#[cfg_attr(feature = "serde", serde(rename = "SQYA"))]
Sqya,
#[yaserde(rename = "ACRE")]
#[cfg_attr(feature = "serde", serde(rename = "ACRE"))]
Acre,
#[yaserde(rename = "ARES")]
#[cfg_attr(feature = "serde", serde(rename = "ARES"))]
Ares,
#[yaserde(rename = "SMIL")]
#[cfg_attr(feature = "serde", serde(rename = "SMIL"))]
Smil,
#[yaserde(rename = "SCMT")]
#[cfg_attr(feature = "serde", serde(rename = "SCMT"))]
Scmt,
#[yaserde(rename = "HECT")]
#[cfg_attr(feature = "serde", serde(rename = "HECT"))]
Hect,
#[yaserde(rename = "SQKI")]
#[cfg_attr(feature = "serde", serde(rename = "SQKI"))]
Sqki,
#[yaserde(rename = "MILI")]
#[cfg_attr(feature = "serde", serde(rename = "MILI"))]
Mili,
#[yaserde(rename = "CELI")]
#[cfg_attr(feature = "serde", serde(rename = "CELI"))]
Celi,
#[yaserde(rename = "LITR")]
#[cfg_attr(feature = "serde", serde(rename = "LITR"))]
Litr,
#[yaserde(rename = "PUND")]
#[cfg_attr(feature = "serde", serde(rename = "PUND"))]
Pund,
#[yaserde(rename = "KWHO")]
#[cfg_attr(feature = "serde", serde(rename = "KWHO"))]
Kwho,
#[yaserde(rename = "CHMT")]
#[cfg_attr(feature = "serde", serde(rename = "CHMT"))]
Chmt,
__Unknown__(String),
}
impl Default for UnitOfMeasure14Code {
fn default() -> UnitOfMeasure14Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for UnitOfMeasure14Code {}
#[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:cain.025.001.04")]
pub enum UnitOfMeasure1Code {
#[yaserde(rename = "PIEC")]
#[cfg_attr(feature = "serde", serde(rename = "PIEC"))]
Piec,
#[yaserde(rename = "TONS")]
#[cfg_attr(feature = "serde", serde(rename = "TONS"))]
Tons,
#[yaserde(rename = "FOOT")]
#[cfg_attr(feature = "serde", serde(rename = "FOOT"))]
Foot,
#[yaserde(rename = "GBGA")]
#[cfg_attr(feature = "serde", serde(rename = "GBGA"))]
Gbga,
#[yaserde(rename = "USGA")]
#[cfg_attr(feature = "serde", serde(rename = "USGA"))]
Usga,
#[yaserde(rename = "GRAM")]
#[cfg_attr(feature = "serde", serde(rename = "GRAM"))]
Gram,
#[yaserde(rename = "INCH")]
#[cfg_attr(feature = "serde", serde(rename = "INCH"))]
Inch,
#[yaserde(rename = "KILO")]
#[cfg_attr(feature = "serde", serde(rename = "KILO"))]
Kilo,
#[yaserde(rename = "PUND")]
#[cfg_attr(feature = "serde", serde(rename = "PUND"))]
Pund,
#[yaserde(rename = "METR")]
#[cfg_attr(feature = "serde", serde(rename = "METR"))]
Metr,
#[yaserde(rename = "CMET")]
#[cfg_attr(feature = "serde", serde(rename = "CMET"))]
Cmet,
#[yaserde(rename = "MMET")]
#[cfg_attr(feature = "serde", serde(rename = "MMET"))]
Mmet,
#[yaserde(rename = "LITR")]
#[cfg_attr(feature = "serde", serde(rename = "LITR"))]
Litr,
#[yaserde(rename = "CELI")]
#[cfg_attr(feature = "serde", serde(rename = "CELI"))]
Celi,
#[yaserde(rename = "MILI")]
#[cfg_attr(feature = "serde", serde(rename = "MILI"))]
Mili,
#[yaserde(rename = "GBOU")]
#[cfg_attr(feature = "serde", serde(rename = "GBOU"))]
Gbou,
#[yaserde(rename = "USOU")]
#[cfg_attr(feature = "serde", serde(rename = "USOU"))]
Usou,
#[yaserde(rename = "GBQA")]
#[cfg_attr(feature = "serde", serde(rename = "GBQA"))]
Gbqa,
#[yaserde(rename = "USQA")]
#[cfg_attr(feature = "serde", serde(rename = "USQA"))]
Usqa,
#[yaserde(rename = "GBPI")]
#[cfg_attr(feature = "serde", serde(rename = "GBPI"))]
Gbpi,
#[yaserde(rename = "USPI")]
#[cfg_attr(feature = "serde", serde(rename = "USPI"))]
Uspi,
#[yaserde(rename = "MILE")]
#[cfg_attr(feature = "serde", serde(rename = "MILE"))]
Mile,
#[yaserde(rename = "KMET")]
#[cfg_attr(feature = "serde", serde(rename = "KMET"))]
Kmet,
#[yaserde(rename = "YARD")]
#[cfg_attr(feature = "serde", serde(rename = "YARD"))]
Yard,
#[yaserde(rename = "SQKI")]
#[cfg_attr(feature = "serde", serde(rename = "SQKI"))]
Sqki,
#[yaserde(rename = "HECT")]
#[cfg_attr(feature = "serde", serde(rename = "HECT"))]
Hect,
#[yaserde(rename = "ARES")]
#[cfg_attr(feature = "serde", serde(rename = "ARES"))]
Ares,
#[yaserde(rename = "SMET")]
#[cfg_attr(feature = "serde", serde(rename = "SMET"))]
Smet,
#[yaserde(rename = "SCMT")]
#[cfg_attr(feature = "serde", serde(rename = "SCMT"))]
Scmt,
#[yaserde(rename = "SMIL")]
#[cfg_attr(feature = "serde", serde(rename = "SMIL"))]
Smil,
#[yaserde(rename = "SQMI")]
#[cfg_attr(feature = "serde", serde(rename = "SQMI"))]
Sqmi,
#[yaserde(rename = "SQYA")]
#[cfg_attr(feature = "serde", serde(rename = "SQYA"))]
Sqya,
#[yaserde(rename = "SQFO")]
#[cfg_attr(feature = "serde", serde(rename = "SQFO"))]
Sqfo,
#[yaserde(rename = "SQIN")]
#[cfg_attr(feature = "serde", serde(rename = "SQIN"))]
Sqin,
#[yaserde(rename = "ACRE")]
#[cfg_attr(feature = "serde", serde(rename = "ACRE"))]
Acre,
__Unknown__(String),
}
impl Default for UnitOfMeasure1Code {
fn default() -> UnitOfMeasure1Code {
Self::__Unknown__("No valid variants".into())
}
}
impl Validate for UnitOfMeasure1Code {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct Vehicle2 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: Max35Text,
#[yaserde(rename = "NtryMd")]
#[cfg_attr(feature = "serde", serde(rename = "NtryMd"))]
pub ntry_md: CardDataReading5Code,
#[yaserde(rename = "Data")]
#[cfg_attr(feature = "serde", serde(rename = "Data"))]
pub data: Max35Text,
}
impl Validate for Vehicle2 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct VehicleRentalAdditionalAmount1 {
#[yaserde(rename = "Tp")]
#[cfg_attr(feature = "serde", serde(rename = "Tp"))]
pub tp: CarRentalServiceType3Code,
#[yaserde(rename = "Amt")]
#[cfg_attr(feature = "serde", serde(rename = "Amt"))]
pub amt: ImpliedCurrencyAndAmount,
#[yaserde(rename = "CdtDbt")]
#[cfg_attr(feature = "serde", serde(rename = "CdtDbt"))]
pub cdt_dbt: CreditDebit3Code,
#[yaserde(rename = "CstmrNtfd")]
#[cfg_attr(feature = "serde", serde(rename = "CstmrNtfd"))]
pub cstmr_ntfd: TrueFalseIndicator,
}
impl Validate for VehicleRentalAdditionalAmount1 {}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Default, Clone, PartialEq, Debug, YaSerialize, YaDeserialize)]
#[yaserde(prefix = "n", default_namespace = "n", namespace = "n: urn:iso:std:iso:20022:tech:xsd:cain.025.001.04")]
pub struct VehicleRentalService4 {
#[yaserde(rename = "CpnyNm")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyNm"))]
pub cpny_nm: Max70Text,
#[yaserde(rename = "CpnyId")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyId"))]
pub cpny_id: Max35Text,
#[yaserde(rename = "CpnyBizNm")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyBizNm"))]
pub cpny_biz_nm: Max35Text,
#[yaserde(rename = "CpnyLglCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyLglCorpNm"))]
pub cpny_lgl_corp_nm: Max99Text,
#[yaserde(rename = "CpnyAdr")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyAdr"))]
pub cpny_adr: Address4,
#[yaserde(rename = "CpnyLclData")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyLclData"))]
pub cpny_lcl_data: Vec<LocalData20>,
#[yaserde(rename = "CpnyCtct")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyCtct"))]
pub cpny_ctct: ContactBusiness2,
#[yaserde(rename = "CpnyTp")]
#[cfg_attr(feature = "serde", serde(rename = "CpnyTp"))]
pub cpny_tp: CarRentalActivity2Code,
#[yaserde(rename = "RntrNm")]
#[cfg_attr(feature = "serde", serde(rename = "RntrNm"))]
pub rntr_nm: Max105Text,
#[yaserde(rename = "RntrCorpNm")]
#[cfg_attr(feature = "serde", serde(rename = "RntrCorpNm"))]
pub rntr_corp_nm: Max70Text,
#[yaserde(rename = "RntrCorpIdr")]
#[cfg_attr(feature = "serde", serde(rename = "RntrCorpIdr"))]
pub rntr_corp_idr: Max35Text,
#[yaserde(rename = "RntrCorpIdrAssgnr")]
#[cfg_attr(feature = "serde", serde(rename = "RntrCorpIdrAssgnr"))]
pub rntr_corp_idr_assgnr: CustomerAssigner1Code,
#[yaserde(rename = "PmryDrvr")]
#[cfg_attr(feature = "serde", serde(rename = "PmryDrvr"))]
pub pmry_drvr: DriverInParty4,
#[yaserde(rename = "AddtlDrvr")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlDrvr"))]
pub addtl_drvr: Vec<DriverInParty4>,
#[yaserde(rename = "LltyPrgrmm")]
#[cfg_attr(feature = "serde", serde(rename = "LltyPrgrmm"))]
pub llty_prgrmm: Vec<LoyaltyProgramme4>,
#[yaserde(rename = "SummryCmmdtyId")]
#[cfg_attr(feature = "serde", serde(rename = "SummryCmmdtyId"))]
pub summry_cmmdty_id: Max35Text,
#[yaserde(rename = "NoShow")]
#[cfg_attr(feature = "serde", serde(rename = "NoShow"))]
pub no_show: TrueFalseIndicator,
#[yaserde(rename = "RntlAgrmtNb")]
#[cfg_attr(feature = "serde", serde(rename = "RntlAgrmtNb"))]
pub rntl_agrmt_nb: Max35Text,
#[yaserde(rename = "RntlLctn")]
#[cfg_attr(feature = "serde", serde(rename = "RntlLctn"))]
pub rntl_lctn: Address4,
#[yaserde(rename = "Adjstd")]
#[cfg_attr(feature = "serde", serde(rename = "Adjstd"))]
pub adjstd: TrueFalseIndicator,
#[yaserde(rename = "PckpLctn")]
#[cfg_attr(feature = "serde", serde(rename = "PckpLctn"))]
pub pckp_lctn: Vec<Address4>,
#[yaserde(rename = "ChckOutDt")]
#[cfg_attr(feature = "serde", serde(rename = "ChckOutDt"))]
pub chck_out_dt: Isodate,
#[yaserde(rename = "ChckOutTm")]
#[cfg_attr(feature = "serde", serde(rename = "ChckOutTm"))]
pub chck_out_tm: Isotime,
#[yaserde(rename = "RtrLctn")]
#[cfg_attr(feature = "serde", serde(rename = "RtrLctn"))]
pub rtr_lctn: Address4,
#[yaserde(rename = "ChckInDt")]
#[cfg_attr(feature = "serde", serde(rename = "ChckInDt"))]
pub chck_in_dt: Isodate,
#[yaserde(rename = "ChckInTm")]
#[cfg_attr(feature = "serde", serde(rename = "ChckInTm"))]
pub chck_in_tm: Isotime,
#[yaserde(rename = "Drtn")]
#[cfg_attr(feature = "serde", serde(rename = "Drtn"))]
pub drtn: Max4NumericText,
#[yaserde(rename = "ClssInvcd")]
#[cfg_attr(feature = "serde", serde(rename = "ClssInvcd"))]
pub clss_invcd: Max35Text,
#[yaserde(rename = "MakeInvcd")]
#[cfg_attr(feature = "serde", serde(rename = "MakeInvcd"))]
pub make_invcd: Max35NumericText,
#[yaserde(rename = "MdlInvcd")]
#[cfg_attr(feature = "serde", serde(rename = "MdlInvcd"))]
pub mdl_invcd: Max35NumericText,
#[yaserde(rename = "RegnNbInvcd")]
#[cfg_attr(feature = "serde", serde(rename = "RegnNbInvcd"))]
pub regn_nb_invcd: Max35Text,
#[yaserde(rename = "ClssPrvdd")]
#[cfg_attr(feature = "serde", serde(rename = "ClssPrvdd"))]
pub clss_prvdd: Max35Text,
#[yaserde(rename = "MakePrvdd")]
#[cfg_attr(feature = "serde", serde(rename = "MakePrvdd"))]
pub make_prvdd: Max35NumericText,
#[yaserde(rename = "MdlPrvdd")]
#[cfg_attr(feature = "serde", serde(rename = "MdlPrvdd"))]
pub mdl_prvdd: Max35NumericText,
#[yaserde(rename = "RegnNbPrvdd")]
#[cfg_attr(feature = "serde", serde(rename = "RegnNbPrvdd"))]
pub regn_nb_prvdd: Max35Text,
#[yaserde(rename = "DstncUnit")]
#[cfg_attr(feature = "serde", serde(rename = "DstncUnit"))]
pub dstnc_unit: UnitOfMeasure10Code,
#[yaserde(rename = "OdmtrStart")]
#[cfg_attr(feature = "serde", serde(rename = "OdmtrStart"))]
pub odmtr_start: Max10NumericText,
#[yaserde(rename = "OdmtrRtr")]
#[cfg_attr(feature = "serde", serde(rename = "OdmtrRtr"))]
pub odmtr_rtr: Max10NumericText,
#[yaserde(rename = "TtlDstnc")]
#[cfg_attr(feature = "serde", serde(rename = "TtlDstnc"))]
pub ttl_dstnc: Max10NumericText,
#[yaserde(rename = "FreeDstnc")]
#[cfg_attr(feature = "serde", serde(rename = "FreeDstnc"))]
pub free_dstnc: Max10NumericText,
#[yaserde(rename = "DstncRate")]
#[cfg_attr(feature = "serde", serde(rename = "DstncRate"))]
pub dstnc_rate: ImpliedCurrencyAndAmount,
#[yaserde(rename = "RntlRate")]
#[cfg_attr(feature = "serde", serde(rename = "RntlRate"))]
pub rntl_rate: Vec<RentalRate3>,
#[yaserde(rename = "Insrnc")]
#[cfg_attr(feature = "serde", serde(rename = "Insrnc"))]
pub insrnc: TrueFalseIndicator,
#[yaserde(rename = "AddtlAmt")]
#[cfg_attr(feature = "serde", serde(rename = "AddtlAmt"))]
pub addtl_amt: Vec<VehicleRentalAdditionalAmount1>,
#[yaserde(rename = "Tax")]
#[cfg_attr(feature = "serde", serde(rename = "Tax"))]
pub tax: Vec<Tax44>,
#[yaserde(rename = "PrvtData")]
#[cfg_attr(feature = "serde", serde(rename = "PrvtData"))]
pub prvt_data: Vec<AticalaxProcessing>,
#[yaserde(rename = "NtlData")]
#[cfg_attr(feature = "serde", serde(rename = "NtlData"))]
pub ntl_data: Vec<AticalaxProcessing>,
}
impl Validate for VehicleRentalService4 {}
impl crate::MxMessage for Document {
const BUSINESS_AREA: crate::BusinessArea = crate::BusinessArea::cain;
const FUNCTIONALITY: &'static str = "025";
const VARIANT: &'static str = "001";
const VERSION: &'static str = "04";
const MESSAGE_NAME: &'static str = "cain.025.001.04";
const NAMESPACE: &'static str = "urn:iso:std:iso:20022:tech:xsd:cain.025.001.04";
}