zugferd_code_lists/zugferd_2_3_3/
eas.rs

1#![allow(non_camel_case_types)]
2
3#[cfg_attr(feature = "specta", derive(specta::Type))]
4#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy, Hash)]
6pub enum EAS {
7    /// System Information et Repertoire des Entreprise et des Etablissements: SIRENE
8    SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene,
9    /// Organisationsnummer
10    Organisationsnummer,
11    /// SIRET-CODE
12    SiretCode,
13    /// LY-tunnus
14    LyTunnus,
15    /// Data Universal Numbering System (D-U-N-S Number)
16    DataUniversalNumberingSystemDUNSNumber,
17    /// EAN Location Code
18    EanLocationCode,
19    /// The Danish Business Authority - P-number (DK:P)
20    TheDanishBusinessAuthorityPNumberDkP,
21    /// FTI - Ediforum Italia, (EDIRA compliant)
22    FtiEdiforumItaliaEdiraCompliant,
23    /// Vereniging van Kamers van Koophandel en Fabrieken in Nederland (Association of Chambers of Commerce and Industry in the Netherlands), Scheme (EDIRA compliant)
24    VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant,
25    /// Directorates of the European Commission
26    DirectoratesEuropeanCommission,
27    /// SIA Object Identifiers
28    SiaObjectIdentifiers,
29    /// SECETI Object Identifiers
30    SecetiObjectIdentifiers,
31    /// Standard Company Code
32    StandardCompanyCode,
33    /// Australian Business Number (ABN) Scheme
34    AustralianBusinessNumberAbnScheme,
35    /// Identification number of economic subjects: (ICO)
36    IdentificationNumberEconomicSubjectsIco,
37    /// Identification number of economic subject (ICO) Act on State Statistics of 29 November 2001, § 27
38    IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127,
39    /// Teikoku Company Code
40    TeikokuCompanyCode,
41    /// Odette International Limited
42    OdetteInternationalLimited,
43    /// Numéro d'identification suisse des enterprises (IDE), Swiss Unique Business Identification Number (UIDB)
44    NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb,
45    /// DIGSTORG
46    Digstorg,
47    /// Corporate Number of The Social Security and Tax Number System
48    CorporateNumberTheSocialSecurityAndTaxNumberSystem,
49    /// Dutch Originator's Identification Number
50    DutchOriginatorsIdentificationNumber,
51    /// Centre of Registers and Information Systems of the Ministry of Justice
52    CentreRegistersAndInformationSystemsMinistryJustice,
53    /// Enhetsregisteret ved Bronnoysundregisterne
54    EnhetsregisteretVedBronnoysundregisterne,
55    /// UBL.BE party identifier
56    UblBePartyIdentifier,
57    /// KOIOS Open Technical Dictionary
58    KoiosOpenTechnicalDictionary,
59    /// Singapore UEN identifier
60    SingaporeUenIdentifier,
61    /// Kennitala - Iceland legal id for individuals and legal entities
62    KennitalaIcelandLegalIdForIndividualsAndLegalEntities,
63    /// ERSTORG
64    Erstorg,
65    /// Global legal entity identifier (GLEIF)
66    GlobalLegalEntityIdentifierGleif,
67    /// Legal entity code (Lithuania)
68    LegalEntityCodeLithuania,
69    /// Codice Univoco Unità Organizzativa iPA
70    CodiceUnivocoUnitàOrganizzativaIpa,
71    /// Indirizzo di Posta Elettronica Certificata
72    IndirizzoDiPostaElettronicaCertificata,
73    /// eDelivery Network Participant identifier
74    EdeliveryNetworkParticipantIdentifier,
75    /// Leitweg-ID
76    LeitwegId,
77    /// CODDEST
78    Coddest,
79    /// Numero d'entreprise / ondernemingsnummer / Unternehmensnummer
80    NumeroDentrepriseOndernemingsnummerUnternehmensnummer,
81    /// GS1 identification keys
82    Gs1IdentificationKeys,
83    /// CODICE FISCALE
84    CodiceFiscale,
85    /// PARTITA IVA
86    PartitaIva,
87    /// Finnish Organization Identifier
88    FinnishOrganizationIdentifier,
89    /// Finnish Organization Value Add Tax Identifier
90    FinnishOrganizationValueAddTaxIdentifier,
91    /// Net service ID
92    NetServiceId,
93    /// OVTcode
94    Ovtcode,
95    /// The Netherlands Chamber of Commerce and Industry establishment number
96    TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber,
97    /// Unified registration number (Latvia)
98    UnifiedRegistrationNumberLatvia,
99    ///  The registered number of the qualified invoice issuer
100    TheRegisteredNumberQualifiedInvoiceIssuer,
101    ///  FRCTC ELECTRONIC ADDRESS
102    FrctcElectronicAddress,
103    ///  National e-Invoicing Framework
104    NationalEInvoicingFramework,
105    /// UAE Tax Identification Number (TIN)
106    UaeTaxIdentificationNumberTin,
107    /// Register of legal persons (in French : Répertoire des personnes morales)
108    RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales,
109    /// Hungary VAT number
110    HungaryVatNumber,
111    /// Business Registers Network
112    BusinessRegistersNetwork,
113    /// Österreichische Umsatzsteuer-Identifikationsnummer
114    ÖsterreichischeUmsatzsteuerIdentifikationsnummer,
115    /// Österreichisches Verwaltungs bzw. Organisationskennzeichen
116    ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen,
117    /// SOCIETY FOR WORLDWIDE INTERBANK FINANCIAL, TELECOMMUNICATION S.W.I.F.T
118    SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT,
119    /// Kennziffer des Unternehmensregisters
120    KennzifferDesUnternehmensregisters,
121    /// Agencia Española de Administración Tributaria
122    AgenciaEspañolaDeAdministraciónTributaria,
123    /// Andorra VAT number
124    AndorraVatNumber,
125    /// Albania VAT number
126    AlbaniaVatNumber,
127    /// Bosnia and Herzegovina VAT number
128    BosniaAndHerzegovinaVatNumber,
129    /// Belgium VAT number
130    BelgiumVatNumber,
131    /// Bulgaria VAT number
132    BulgariaVatNumber,
133    /// Switzerland VAT number
134    SwitzerlandVatNumber,
135    /// Cyprus VAT number
136    CyprusVatNumber,
137    /// Czech Republic VAT number
138    CzechRepublicVatNumber,
139    /// Germany VAT number
140    GermanyVatNumber,
141    /// Estonia VAT number
142    EstoniaVatNumber,
143    /// United Kingdom VAT number
144    UnitedKingdomVatNumber,
145    /// Greece VAT number
146    GreeceVatNumber,
147    /// Croatia VAT number
148    CroatiaVatNumber,
149    /// Ireland VAT number
150    IrelandVatNumber,
151    /// Liechtenstein VAT number
152    LiechtensteinVatNumber,
153    /// Lithuania VAT number
154    LithuaniaVatNumber,
155    /// Luxemburg VAT number
156    LuxemburgVatNumber,
157    /// Latvia VAT number
158    LatviaVatNumber,
159    /// Monaco VAT number
160    MonacoVatNumber,
161    /// Montenegro VAT number
162    MontenegroVatNumber,
163    /// Macedonia, the former Yugoslav Republic of VAT number
164    MacedoniaFormerYugoslavRepublicVatNumber,
165    /// Malta VAT number
166    MaltaVatNumber,
167    /// Netherlands VAT number
168    NetherlandsVatNumber,
169    /// Poland VAT number
170    PolandVatNumber,
171    /// Portugal VAT number
172    PortugalVatNumber,
173    /// Romania VAT number
174    RomaniaVatNumber,
175    /// Serbia VAT number
176    SerbiaVatNumber,
177    /// Slovenia VAT number
178    SloveniaVatNumber,
179    /// Slovakia VAT number
180    SlovakiaVatNumber,
181    /// San Marino VAT number
182    SanMarinoVatNumber,
183    /// Turkey VAT number
184    TurkeyVatNumber,
185    /// Holy See (Vatican City State) VAT number
186    HolySeeVaticanCityStateVatNumber,
187    /// French VAT number
188    FrenchVatNumber,
189    /// Employer Identification Number (EIN, USA)
190    EmployerIdentificationNumberEinUsa,
191    /// O.F.T.P. (ODETTE File Transfer Protocol)
192    OFTPOdetteFileTransferProtocol,
193    /// X.400 address for mail text
194    X400AddressForMailText,
195    /// AS2 exchange
196    As2Exchange,
197    /// File Transfer Protocol
198    FileTransferProtocol,
199    /// Electronic mail (SMPT)
200    ElectronicMailSmpt,
201}
202
203impl std::fmt::Display for EAS {
204    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
205        write!(f, "{}", <Self as crate::Code>::code(*self))
206    }
207}
208
209impl std::str::FromStr for EAS {
210    type Err = crate::ParseError<Self>;
211    fn from_str(s: &str) -> Result<Self, Self::Err> {
212        <Self as crate::FromCode>::from_code(s)
213            .ok_or_else(|| crate::ParseError::<Self>::new(s.to_owned()))
214    }
215}
216
217impl crate::Code for EAS {
218    fn code(self) -> &'static str {
219        match self {
220            EAS::SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene => "0002",
221            EAS::Organisationsnummer => "0007",
222            EAS::SiretCode => "0009",
223            EAS::LyTunnus => "0037",
224            EAS::DataUniversalNumberingSystemDUNSNumber => "0060",
225            EAS::EanLocationCode => "0088",
226            EAS::TheDanishBusinessAuthorityPNumberDkP => "0096",
227            EAS::FtiEdiforumItaliaEdiraCompliant => "0097",
228            EAS::VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant => "0106",
229            EAS::DirectoratesEuropeanCommission => "0130",
230            EAS::SiaObjectIdentifiers => "0135",
231            EAS::SecetiObjectIdentifiers => "0142",
232            EAS::StandardCompanyCode => "0147",
233            EAS::AustralianBusinessNumberAbnScheme => "0151",
234            EAS::IdentificationNumberEconomicSubjectsIco => "0154",
235            EAS::IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127 => "0158",
236            EAS::TeikokuCompanyCode => "0170",
237            EAS::OdetteInternationalLimited => "0177",
238            EAS::NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb => "0183",
239            EAS::Digstorg => "0184",
240            EAS::CorporateNumberTheSocialSecurityAndTaxNumberSystem => "0188",
241            EAS::DutchOriginatorsIdentificationNumber => "0190",
242            EAS::CentreRegistersAndInformationSystemsMinistryJustice => "0191",
243            EAS::EnhetsregisteretVedBronnoysundregisterne => "0192",
244            EAS::UblBePartyIdentifier => "0193",
245            EAS::KoiosOpenTechnicalDictionary => "0194",
246            EAS::SingaporeUenIdentifier => "0195",
247            EAS::KennitalaIcelandLegalIdForIndividualsAndLegalEntities => "0196",
248            EAS::Erstorg => "0198",
249            EAS::GlobalLegalEntityIdentifierGleif => "0199",
250            EAS::LegalEntityCodeLithuania => "0200",
251            EAS::CodiceUnivocoUnitàOrganizzativaIpa => "0201",
252            EAS::IndirizzoDiPostaElettronicaCertificata => "0202",
253            EAS::EdeliveryNetworkParticipantIdentifier => "0203",
254            EAS::LeitwegId => "0204",
255            EAS::Coddest => "0205",
256            EAS::NumeroDentrepriseOndernemingsnummerUnternehmensnummer => "0208",
257            EAS::Gs1IdentificationKeys => "0209",
258            EAS::CodiceFiscale => "0210",
259            EAS::PartitaIva => "0211",
260            EAS::FinnishOrganizationIdentifier => "0212",
261            EAS::FinnishOrganizationValueAddTaxIdentifier => "0213",
262            EAS::NetServiceId => "0215",
263            EAS::Ovtcode => "0216",
264            EAS::TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber => "0217",
265            EAS::UnifiedRegistrationNumberLatvia => "0218",
266            EAS::TheRegisteredNumberQualifiedInvoiceIssuer => "0221",
267            EAS::FrctcElectronicAddress => "0225",
268            EAS::NationalEInvoicingFramework => "0230",
269            EAS::UaeTaxIdentificationNumberTin => "0235",
270            EAS::RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales => "0240",
271            EAS::HungaryVatNumber => "9910",
272            EAS::BusinessRegistersNetwork => "9913",
273            EAS::ÖsterreichischeUmsatzsteuerIdentifikationsnummer => "9914",
274            EAS::ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen => "9915",
275            EAS::SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT => "9918",
276            EAS::KennzifferDesUnternehmensregisters => "9919",
277            EAS::AgenciaEspañolaDeAdministraciónTributaria => "9920",
278            EAS::AndorraVatNumber => "9922",
279            EAS::AlbaniaVatNumber => "9923",
280            EAS::BosniaAndHerzegovinaVatNumber => "9924",
281            EAS::BelgiumVatNumber => "9925",
282            EAS::BulgariaVatNumber => "9926",
283            EAS::SwitzerlandVatNumber => "9927",
284            EAS::CyprusVatNumber => "9928",
285            EAS::CzechRepublicVatNumber => "9929",
286            EAS::GermanyVatNumber => "9930",
287            EAS::EstoniaVatNumber => "9931",
288            EAS::UnitedKingdomVatNumber => "9932",
289            EAS::GreeceVatNumber => "9933",
290            EAS::CroatiaVatNumber => "9934",
291            EAS::IrelandVatNumber => "9935",
292            EAS::LiechtensteinVatNumber => "9936",
293            EAS::LithuaniaVatNumber => "9937",
294            EAS::LuxemburgVatNumber => "9938",
295            EAS::LatviaVatNumber => "9939",
296            EAS::MonacoVatNumber => "9940",
297            EAS::MontenegroVatNumber => "9941",
298            EAS::MacedoniaFormerYugoslavRepublicVatNumber => "9942",
299            EAS::MaltaVatNumber => "9943",
300            EAS::NetherlandsVatNumber => "9944",
301            EAS::PolandVatNumber => "9945",
302            EAS::PortugalVatNumber => "9946",
303            EAS::RomaniaVatNumber => "9947",
304            EAS::SerbiaVatNumber => "9948",
305            EAS::SloveniaVatNumber => "9949",
306            EAS::SlovakiaVatNumber => "9950",
307            EAS::SanMarinoVatNumber => "9951",
308            EAS::TurkeyVatNumber => "9952",
309            EAS::HolySeeVaticanCityStateVatNumber => "9953",
310            EAS::FrenchVatNumber => "9957",
311            EAS::EmployerIdentificationNumberEinUsa => "9959",
312            EAS::OFTPOdetteFileTransferProtocol => "AN",
313            EAS::X400AddressForMailText => "AQ ",
314            EAS::As2Exchange => "AS ",
315            EAS::FileTransferProtocol => "AU ",
316            EAS::ElectronicMailSmpt => "EM",
317        }
318    }
319}
320
321impl crate::Description for EAS {
322    fn description(self) -> &'static str {
323        match self {
324            EAS::SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene => "System Information et Repertoire des Entreprise et des Etablissements: SIRENE",
325            EAS::Organisationsnummer => "Organisationsnummer",
326            EAS::SiretCode => "SIRET-CODE",
327            EAS::LyTunnus => "LY-tunnus",
328            EAS::DataUniversalNumberingSystemDUNSNumber => "Data Universal Numbering System (D-U-N-S Number)",
329            EAS::EanLocationCode => "EAN Location Code",
330            EAS::TheDanishBusinessAuthorityPNumberDkP => "The Danish Business Authority - P-number (DK:P)",
331            EAS::FtiEdiforumItaliaEdiraCompliant => "FTI - Ediforum Italia, (EDIRA compliant)",
332            EAS::VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant => "Vereniging van Kamers van Koophandel en Fabrieken in Nederland (Association of Chambers of Commerce and Industry in the Netherlands), Scheme (EDIRA compliant)",
333            EAS::DirectoratesEuropeanCommission => "Directorates of the European Commission",
334            EAS::SiaObjectIdentifiers => "SIA Object Identifiers",
335            EAS::SecetiObjectIdentifiers => "SECETI Object Identifiers",
336            EAS::StandardCompanyCode => "Standard Company Code",
337            EAS::AustralianBusinessNumberAbnScheme => "Australian Business Number (ABN) Scheme",
338            EAS::IdentificationNumberEconomicSubjectsIco => "Identification number of economic subjects: (ICO)",
339            EAS::IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127 => "Identification number of economic subject (ICO) Act on State Statistics of 29 November 2001, § 27",
340            EAS::TeikokuCompanyCode => "Teikoku Company Code",
341            EAS::OdetteInternationalLimited => "Odette International Limited ",
342            EAS::NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb => "Numéro d'identification suisse des enterprises (IDE), Swiss Unique Business Identification Number (UIDB) ",
343            EAS::Digstorg => "DIGSTORG",
344            EAS::CorporateNumberTheSocialSecurityAndTaxNumberSystem => "Corporate Number of The Social Security and Tax Number System",
345            EAS::DutchOriginatorsIdentificationNumber => "Dutch Originator's Identification Number",
346            EAS::CentreRegistersAndInformationSystemsMinistryJustice => "Centre of Registers and Information Systems of the Ministry of Justice",
347            EAS::EnhetsregisteretVedBronnoysundregisterne => "Enhetsregisteret ved Bronnoysundregisterne ",
348            EAS::UblBePartyIdentifier => "UBL.BE party identifier",
349            EAS::KoiosOpenTechnicalDictionary => "KOIOS Open Technical Dictionary",
350            EAS::SingaporeUenIdentifier => "Singapore UEN identifier",
351            EAS::KennitalaIcelandLegalIdForIndividualsAndLegalEntities => "Kennitala - Iceland legal id for individuals and legal entities",
352            EAS::Erstorg => "ERSTORG",
353            EAS::GlobalLegalEntityIdentifierGleif => "Global legal entity identifier (GLEIF)",
354            EAS::LegalEntityCodeLithuania => "Legal entity code (Lithuania)",
355            EAS::CodiceUnivocoUnitàOrganizzativaIpa => "Codice Univoco Unità Organizzativa iPA",
356            EAS::IndirizzoDiPostaElettronicaCertificata => "Indirizzo di Posta Elettronica Certificata",
357            EAS::EdeliveryNetworkParticipantIdentifier => "eDelivery Network Participant identifier",
358            EAS::LeitwegId => "Leitweg-ID",
359            EAS::Coddest => "CODDEST",
360            EAS::NumeroDentrepriseOndernemingsnummerUnternehmensnummer => "Numero d'entreprise / ondernemingsnummer / Unternehmensnummer",
361            EAS::Gs1IdentificationKeys => "GS1 identification keys",
362            EAS::CodiceFiscale => "CODICE FISCALE",
363            EAS::PartitaIva => "PARTITA IVA",
364            EAS::FinnishOrganizationIdentifier => "Finnish Organization Identifier",
365            EAS::FinnishOrganizationValueAddTaxIdentifier => "Finnish Organization Value Add Tax Identifier",
366            EAS::NetServiceId => "Net service ID",
367            EAS::Ovtcode => "OVTcode",
368            EAS::TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber => "The Netherlands Chamber of Commerce and Industry establishment number",
369            EAS::UnifiedRegistrationNumberLatvia => "Unified registration number (Latvia)",
370            EAS::TheRegisteredNumberQualifiedInvoiceIssuer => " The registered number of the qualified invoice issuer",
371            EAS::FrctcElectronicAddress => " FRCTC ELECTRONIC ADDRESS",
372            EAS::NationalEInvoicingFramework => " National e-Invoicing Framework",
373            EAS::UaeTaxIdentificationNumberTin => "UAE Tax Identification Number (TIN)",
374            EAS::RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales => "Register of legal persons (in French : Répertoire des personnes morales)",
375            EAS::HungaryVatNumber => "Hungary VAT number",
376            EAS::BusinessRegistersNetwork => "Business Registers Network ",
377            EAS::ÖsterreichischeUmsatzsteuerIdentifikationsnummer => "Österreichische Umsatzsteuer-Identifikationsnummer ",
378            EAS::ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen => "Österreichisches Verwaltungs bzw. Organisationskennzeichen",
379            EAS::SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT => "SOCIETY FOR WORLDWIDE INTERBANK FINANCIAL, TELECOMMUNICATION S.W.I.F.T",
380            EAS::KennzifferDesUnternehmensregisters => "Kennziffer des Unternehmensregisters ",
381            EAS::AgenciaEspañolaDeAdministraciónTributaria => "Agencia Española de Administración Tributaria ",
382            EAS::AndorraVatNumber => "Andorra VAT number",
383            EAS::AlbaniaVatNumber => "Albania VAT number",
384            EAS::BosniaAndHerzegovinaVatNumber => "Bosnia and Herzegovina VAT number",
385            EAS::BelgiumVatNumber => "Belgium VAT number",
386            EAS::BulgariaVatNumber => "Bulgaria VAT number",
387            EAS::SwitzerlandVatNumber => "Switzerland VAT number",
388            EAS::CyprusVatNumber => "Cyprus VAT number",
389            EAS::CzechRepublicVatNumber => "Czech Republic VAT number",
390            EAS::GermanyVatNumber => "Germany VAT number",
391            EAS::EstoniaVatNumber => "Estonia VAT number",
392            EAS::UnitedKingdomVatNumber => "United Kingdom VAT number",
393            EAS::GreeceVatNumber => "Greece VAT number",
394            EAS::CroatiaVatNumber => "Croatia VAT number",
395            EAS::IrelandVatNumber => "Ireland VAT number",
396            EAS::LiechtensteinVatNumber => "Liechtenstein VAT number",
397            EAS::LithuaniaVatNumber => "Lithuania VAT number",
398            EAS::LuxemburgVatNumber => "Luxemburg VAT number",
399            EAS::LatviaVatNumber => "Latvia VAT number",
400            EAS::MonacoVatNumber => "Monaco VAT number",
401            EAS::MontenegroVatNumber => "Montenegro VAT number",
402            EAS::MacedoniaFormerYugoslavRepublicVatNumber => "Macedonia, the former Yugoslav Republic of VAT number",
403            EAS::MaltaVatNumber => "Malta VAT number",
404            EAS::NetherlandsVatNumber => "Netherlands VAT number",
405            EAS::PolandVatNumber => "Poland VAT number",
406            EAS::PortugalVatNumber => "Portugal VAT number",
407            EAS::RomaniaVatNumber => "Romania VAT number",
408            EAS::SerbiaVatNumber => "Serbia VAT number",
409            EAS::SloveniaVatNumber => "Slovenia VAT number",
410            EAS::SlovakiaVatNumber => "Slovakia VAT number",
411            EAS::SanMarinoVatNumber => "San Marino VAT number",
412            EAS::TurkeyVatNumber => "Turkey VAT number",
413            EAS::HolySeeVaticanCityStateVatNumber => "Holy See (Vatican City State) VAT number",
414            EAS::FrenchVatNumber => "French VAT number",
415            EAS::EmployerIdentificationNumberEinUsa => "Employer Identification Number (EIN, USA)",
416            EAS::OFTPOdetteFileTransferProtocol => "O.F.T.P. (ODETTE File Transfer Protocol)",
417            EAS::X400AddressForMailText => "X.400 address for mail text",
418            EAS::As2Exchange => "AS2 exchange ",
419            EAS::FileTransferProtocol => "File Transfer Protocol",
420            EAS::ElectronicMailSmpt => "Electronic mail (SMPT)",
421        }
422    }
423}
424
425impl crate::FromCode for EAS {
426    fn from_code(code: &str) -> Option<Self>
427    where
428        Self: Sized,
429    {
430        match code {
431            "0002" => Some(EAS::SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene),
432            "0007" => Some(EAS::Organisationsnummer),
433            "0009" => Some(EAS::SiretCode),
434            "0037" => Some(EAS::LyTunnus),
435            "0060" => Some(EAS::DataUniversalNumberingSystemDUNSNumber),
436            "0088" => Some(EAS::EanLocationCode),
437            "0096" => Some(EAS::TheDanishBusinessAuthorityPNumberDkP),
438            "0097" => Some(EAS::FtiEdiforumItaliaEdiraCompliant),
439            "0106" => Some(EAS::VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant),
440            "0130" => Some(EAS::DirectoratesEuropeanCommission),
441            "0135" => Some(EAS::SiaObjectIdentifiers),
442            "0142" => Some(EAS::SecetiObjectIdentifiers),
443            "0147" => Some(EAS::StandardCompanyCode),
444            "0151" => Some(EAS::AustralianBusinessNumberAbnScheme),
445            "0154" => Some(EAS::IdentificationNumberEconomicSubjectsIco),
446            "0158" => Some(EAS::IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127),
447            "0170" => Some(EAS::TeikokuCompanyCode),
448            "0177" => Some(EAS::OdetteInternationalLimited),
449            "0183" => Some(EAS::NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb),
450            "0184" => Some(EAS::Digstorg),
451            "0188" => Some(EAS::CorporateNumberTheSocialSecurityAndTaxNumberSystem),
452            "0190" => Some(EAS::DutchOriginatorsIdentificationNumber),
453            "0191" => Some(EAS::CentreRegistersAndInformationSystemsMinistryJustice),
454            "0192" => Some(EAS::EnhetsregisteretVedBronnoysundregisterne),
455            "0193" => Some(EAS::UblBePartyIdentifier),
456            "0194" => Some(EAS::KoiosOpenTechnicalDictionary),
457            "0195" => Some(EAS::SingaporeUenIdentifier),
458            "0196" => Some(EAS::KennitalaIcelandLegalIdForIndividualsAndLegalEntities),
459            "0198" => Some(EAS::Erstorg),
460            "0199" => Some(EAS::GlobalLegalEntityIdentifierGleif),
461            "0200" => Some(EAS::LegalEntityCodeLithuania),
462            "0201" => Some(EAS::CodiceUnivocoUnitàOrganizzativaIpa),
463            "0202" => Some(EAS::IndirizzoDiPostaElettronicaCertificata),
464            "0203" => Some(EAS::EdeliveryNetworkParticipantIdentifier),
465            "0204" => Some(EAS::LeitwegId),
466            "0205" => Some(EAS::Coddest),
467            "0208" => Some(EAS::NumeroDentrepriseOndernemingsnummerUnternehmensnummer),
468            "0209" => Some(EAS::Gs1IdentificationKeys),
469            "0210" => Some(EAS::CodiceFiscale),
470            "0211" => Some(EAS::PartitaIva),
471            "0212" => Some(EAS::FinnishOrganizationIdentifier),
472            "0213" => Some(EAS::FinnishOrganizationValueAddTaxIdentifier),
473            "0215" => Some(EAS::NetServiceId),
474            "0216" => Some(EAS::Ovtcode),
475            "0217" => Some(EAS::TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber),
476            "0218" => Some(EAS::UnifiedRegistrationNumberLatvia),
477            "0221" => Some(EAS::TheRegisteredNumberQualifiedInvoiceIssuer),
478            "0225" => Some(EAS::FrctcElectronicAddress),
479            "0230" => Some(EAS::NationalEInvoicingFramework),
480            "0235" => Some(EAS::UaeTaxIdentificationNumberTin),
481            "0240" => Some(EAS::RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales),
482            "9910" => Some(EAS::HungaryVatNumber),
483            "9913" => Some(EAS::BusinessRegistersNetwork),
484            "9914" => Some(EAS::ÖsterreichischeUmsatzsteuerIdentifikationsnummer),
485            "9915" => Some(EAS::ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen),
486            "9918" => Some(EAS::SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT),
487            "9919" => Some(EAS::KennzifferDesUnternehmensregisters),
488            "9920" => Some(EAS::AgenciaEspañolaDeAdministraciónTributaria),
489            "9922" => Some(EAS::AndorraVatNumber),
490            "9923" => Some(EAS::AlbaniaVatNumber),
491            "9924" => Some(EAS::BosniaAndHerzegovinaVatNumber),
492            "9925" => Some(EAS::BelgiumVatNumber),
493            "9926" => Some(EAS::BulgariaVatNumber),
494            "9927" => Some(EAS::SwitzerlandVatNumber),
495            "9928" => Some(EAS::CyprusVatNumber),
496            "9929" => Some(EAS::CzechRepublicVatNumber),
497            "9930" => Some(EAS::GermanyVatNumber),
498            "9931" => Some(EAS::EstoniaVatNumber),
499            "9932" => Some(EAS::UnitedKingdomVatNumber),
500            "9933" => Some(EAS::GreeceVatNumber),
501            "9934" => Some(EAS::CroatiaVatNumber),
502            "9935" => Some(EAS::IrelandVatNumber),
503            "9936" => Some(EAS::LiechtensteinVatNumber),
504            "9937" => Some(EAS::LithuaniaVatNumber),
505            "9938" => Some(EAS::LuxemburgVatNumber),
506            "9939" => Some(EAS::LatviaVatNumber),
507            "9940" => Some(EAS::MonacoVatNumber),
508            "9941" => Some(EAS::MontenegroVatNumber),
509            "9942" => Some(EAS::MacedoniaFormerYugoslavRepublicVatNumber),
510            "9943" => Some(EAS::MaltaVatNumber),
511            "9944" => Some(EAS::NetherlandsVatNumber),
512            "9945" => Some(EAS::PolandVatNumber),
513            "9946" => Some(EAS::PortugalVatNumber),
514            "9947" => Some(EAS::RomaniaVatNumber),
515            "9948" => Some(EAS::SerbiaVatNumber),
516            "9949" => Some(EAS::SloveniaVatNumber),
517            "9950" => Some(EAS::SlovakiaVatNumber),
518            "9951" => Some(EAS::SanMarinoVatNumber),
519            "9952" => Some(EAS::TurkeyVatNumber),
520            "9953" => Some(EAS::HolySeeVaticanCityStateVatNumber),
521            "9957" => Some(EAS::FrenchVatNumber),
522            "9959" => Some(EAS::EmployerIdentificationNumberEinUsa),
523            "AN" => Some(EAS::OFTPOdetteFileTransferProtocol),
524            "AQ " => Some(EAS::X400AddressForMailText),
525            "AS " => Some(EAS::As2Exchange),
526            "AU " => Some(EAS::FileTransferProtocol),
527            "EM" => Some(EAS::ElectronicMailSmpt),
528            _ => None,
529        }
530    }
531}
532
533// Start: (Version) TryFrom EAS to crate::zugferd_2_3_2::EAS
534impl std::convert::TryFrom<EAS> for crate::zugferd_2_3_2::EAS {
535    type Error = ErrFromEasToCrateZugferd232Eas;
536    fn try_from(value: EAS) -> Result<Self, Self::Error> {
537        match value {
538            EAS::SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene => Ok(crate::zugferd_2_3_2::EAS::SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene),
539            EAS::Organisationsnummer => Ok(crate::zugferd_2_3_2::EAS::Organisationsnummer),
540            EAS::SiretCode => Ok(crate::zugferd_2_3_2::EAS::SiretCode),
541            EAS::LyTunnus => Ok(crate::zugferd_2_3_2::EAS::LyTunnus),
542            EAS::DataUniversalNumberingSystemDUNSNumber => Ok(crate::zugferd_2_3_2::EAS::DataUniversalNumberingSystemDUNSNumber),
543            EAS::EanLocationCode => Ok(crate::zugferd_2_3_2::EAS::EanLocationCode),
544            EAS::TheDanishBusinessAuthorityPNumberDkP => Ok(crate::zugferd_2_3_2::EAS::DanishChamberOfCommerceSchemeEdiraCompliant),
545            EAS::FtiEdiforumItaliaEdiraCompliant => Ok(crate::zugferd_2_3_2::EAS::FtiEdiforumItaliaEdiraCompliant),
546            EAS::VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant => Ok(crate::zugferd_2_3_2::EAS::VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant),
547            EAS::DirectoratesEuropeanCommission => Ok(crate::zugferd_2_3_2::EAS::DirectoratesEuropeanCommission),
548            EAS::SiaObjectIdentifiers => Ok(crate::zugferd_2_3_2::EAS::SiaObjectIdentifiers),
549            EAS::SecetiObjectIdentifiers => Ok(crate::zugferd_2_3_2::EAS::SecetiObjectIdentifiers),
550            EAS::StandardCompanyCode => Ok(crate::zugferd_2_3_2::EAS::StandardCompanyCode),
551            EAS::AustralianBusinessNumberAbnScheme => Ok(crate::zugferd_2_3_2::EAS::AustralianBusinessNumberAbnScheme),
552            EAS::TeikokuCompanyCode => Ok(crate::zugferd_2_3_2::EAS::TeikokuCompanyCode),
553            EAS::OdetteInternationalLimited => Ok(crate::zugferd_2_3_2::EAS::OdetteInternationalLimited),
554            EAS::NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb => Ok(crate::zugferd_2_3_2::EAS::NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb),
555            EAS::Digstorg => Ok(crate::zugferd_2_3_2::EAS::Digstorg),
556            EAS::CorporateNumberTheSocialSecurityAndTaxNumberSystem => Ok(crate::zugferd_2_3_2::EAS::CorporateNumberTheSocialSecurityAndTaxNumberSystem),
557            EAS::DutchOriginatorsIdentificationNumber => Ok(crate::zugferd_2_3_2::EAS::DutchOriginatorsIdentificationNumber),
558            EAS::CentreRegistersAndInformationSystemsMinistryJustice => Ok(crate::zugferd_2_3_2::EAS::CentreRegistersAndInformationSystemsMinistryJustice),
559            EAS::EnhetsregisteretVedBronnoysundregisterne => Ok(crate::zugferd_2_3_2::EAS::EnhetsregisteretVedBronnoysundregisterne),
560            EAS::UblBePartyIdentifier => Ok(crate::zugferd_2_3_2::EAS::UblBePartyIdentifier),
561            EAS::KoiosOpenTechnicalDictionary => Ok(crate::zugferd_2_3_2::EAS::KoiosOpenTechnicalDictionary),
562            EAS::SingaporeUenIdentifier => Ok(crate::zugferd_2_3_2::EAS::SingaporeUenIdentifier),
563            EAS::KennitalaIcelandLegalIdForIndividualsAndLegalEntities => Ok(crate::zugferd_2_3_2::EAS::KennitalaIcelandLegalIdForIndividualsAndLegalEntities),
564            EAS::Erstorg => Ok(crate::zugferd_2_3_2::EAS::Erstorg),
565            EAS::GlobalLegalEntityIdentifierGleif => Ok(crate::zugferd_2_3_2::EAS::GlobalLegalEntityIdentifierGleif),
566            EAS::LegalEntityCodeLithuania => Ok(crate::zugferd_2_3_2::EAS::LegalEntityCodeLithuania),
567            EAS::CodiceUnivocoUnitàOrganizzativaIpa => Ok(crate::zugferd_2_3_2::EAS::CodiceUnivocoUnitàOrganizzativaIpa),
568            EAS::IndirizzoDiPostaElettronicaCertificata => Ok(crate::zugferd_2_3_2::EAS::IndirizzoDiPostaElettronicaCertificata),
569            EAS::EdeliveryNetworkParticipantIdentifier => Ok(crate::zugferd_2_3_2::EAS::EdeliveryNetworkParticipantIdentifier),
570            EAS::LeitwegId => Ok(crate::zugferd_2_3_2::EAS::LeitwegId),
571            EAS::Coddest => Ok(crate::zugferd_2_3_2::EAS::Coddest),
572            EAS::NumeroDentrepriseOndernemingsnummerUnternehmensnummer => Ok(crate::zugferd_2_3_2::EAS::NumeroDentrepriseOndernemingsnummerUnternehmensnummer),
573            EAS::Gs1IdentificationKeys => Ok(crate::zugferd_2_3_2::EAS::Gs1IdentificationKeys),
574            EAS::CodiceFiscale => Ok(crate::zugferd_2_3_2::EAS::CodiceFiscale),
575            EAS::PartitaIva => Ok(crate::zugferd_2_3_2::EAS::PartitaIva),
576            EAS::FinnishOrganizationIdentifier => Ok(crate::zugferd_2_3_2::EAS::FinnishOrganizationIdentifier),
577            EAS::FinnishOrganizationValueAddTaxIdentifier => Ok(crate::zugferd_2_3_2::EAS::FinnishOrganizationValueAddTaxIdentifier),
578            EAS::NetServiceId => Ok(crate::zugferd_2_3_2::EAS::NetServiceId),
579            EAS::Ovtcode => Ok(crate::zugferd_2_3_2::EAS::Ovtcode),
580            EAS::TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber => Ok(crate::zugferd_2_3_2::EAS::TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber),
581            EAS::UnifiedRegistrationNumberLatvia => Ok(crate::zugferd_2_3_2::EAS::UnifiedRegistrationNumberLatvia),
582            EAS::TheRegisteredNumberQualifiedInvoiceIssuer => Ok(crate::zugferd_2_3_2::EAS::TheRegisteredNumberQualifiedInvoiceIssuer),
583            EAS::FrctcElectronicAddress => Ok(crate::zugferd_2_3_2::EAS::FrctcElectronicAddress),
584            EAS::NationalEInvoicingFramework => Ok(crate::zugferd_2_3_2::EAS::NationalEInvoicingFramework),
585            EAS::UaeTaxIdentificationNumberTin => Ok(crate::zugferd_2_3_2::EAS::UaeTaxIdentificationNumberTin),
586            EAS::HungaryVatNumber => Ok(crate::zugferd_2_3_2::EAS::HungaryVatNumber),
587            EAS::BusinessRegistersNetwork => Ok(crate::zugferd_2_3_2::EAS::BusinessRegistersNetwork),
588            EAS::ÖsterreichischeUmsatzsteuerIdentifikationsnummer => Ok(crate::zugferd_2_3_2::EAS::ÖsterreichischeUmsatzsteuerIdentifikationsnummer),
589            EAS::ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen => Ok(crate::zugferd_2_3_2::EAS::ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen),
590            EAS::SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT => Ok(crate::zugferd_2_3_2::EAS::SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT),
591            EAS::KennzifferDesUnternehmensregisters => Ok(crate::zugferd_2_3_2::EAS::KennzifferDesUnternehmensregisters),
592            EAS::AgenciaEspañolaDeAdministraciónTributaria => Ok(crate::zugferd_2_3_2::EAS::AgenciaEspañolaDeAdministraciónTributaria),
593            EAS::AndorraVatNumber => Ok(crate::zugferd_2_3_2::EAS::AndorraVatNumber),
594            EAS::AlbaniaVatNumber => Ok(crate::zugferd_2_3_2::EAS::AlbaniaVatNumber),
595            EAS::BosniaAndHerzegovinaVatNumber => Ok(crate::zugferd_2_3_2::EAS::BosniaAndHerzegovinaVatNumber),
596            EAS::BelgiumVatNumber => Ok(crate::zugferd_2_3_2::EAS::BelgiumVatNumber),
597            EAS::BulgariaVatNumber => Ok(crate::zugferd_2_3_2::EAS::BulgariaVatNumber),
598            EAS::SwitzerlandVatNumber => Ok(crate::zugferd_2_3_2::EAS::SwitzerlandVatNumber),
599            EAS::CyprusVatNumber => Ok(crate::zugferd_2_3_2::EAS::CyprusVatNumber),
600            EAS::CzechRepublicVatNumber => Ok(crate::zugferd_2_3_2::EAS::CzechRepublicVatNumber),
601            EAS::GermanyVatNumber => Ok(crate::zugferd_2_3_2::EAS::GermanyVatNumber),
602            EAS::EstoniaVatNumber => Ok(crate::zugferd_2_3_2::EAS::EstoniaVatNumber),
603            EAS::UnitedKingdomVatNumber => Ok(crate::zugferd_2_3_2::EAS::UnitedKingdomVatNumber),
604            EAS::GreeceVatNumber => Ok(crate::zugferd_2_3_2::EAS::GreeceVatNumber),
605            EAS::CroatiaVatNumber => Ok(crate::zugferd_2_3_2::EAS::CroatiaVatNumber),
606            EAS::IrelandVatNumber => Ok(crate::zugferd_2_3_2::EAS::IrelandVatNumber),
607            EAS::LiechtensteinVatNumber => Ok(crate::zugferd_2_3_2::EAS::LiechtensteinVatNumber),
608            EAS::LithuaniaVatNumber => Ok(crate::zugferd_2_3_2::EAS::LithuaniaVatNumber),
609            EAS::LuxemburgVatNumber => Ok(crate::zugferd_2_3_2::EAS::LuxemburgVatNumber),
610            EAS::LatviaVatNumber => Ok(crate::zugferd_2_3_2::EAS::LatviaVatNumber),
611            EAS::MonacoVatNumber => Ok(crate::zugferd_2_3_2::EAS::MonacoVatNumber),
612            EAS::MontenegroVatNumber => Ok(crate::zugferd_2_3_2::EAS::MontenegroVatNumber),
613            EAS::MacedoniaFormerYugoslavRepublicVatNumber => Ok(crate::zugferd_2_3_2::EAS::MacedoniaFormerYugoslavRepublicVatNumber),
614            EAS::MaltaVatNumber => Ok(crate::zugferd_2_3_2::EAS::MaltaVatNumber),
615            EAS::NetherlandsVatNumber => Ok(crate::zugferd_2_3_2::EAS::NetherlandsVatNumber),
616            EAS::PolandVatNumber => Ok(crate::zugferd_2_3_2::EAS::PolandVatNumber),
617            EAS::PortugalVatNumber => Ok(crate::zugferd_2_3_2::EAS::PortugalVatNumber),
618            EAS::RomaniaVatNumber => Ok(crate::zugferd_2_3_2::EAS::RomaniaVatNumber),
619            EAS::SerbiaVatNumber => Ok(crate::zugferd_2_3_2::EAS::SerbiaVatNumber),
620            EAS::SloveniaVatNumber => Ok(crate::zugferd_2_3_2::EAS::SloveniaVatNumber),
621            EAS::SlovakiaVatNumber => Ok(crate::zugferd_2_3_2::EAS::SlovakiaVatNumber),
622            EAS::SanMarinoVatNumber => Ok(crate::zugferd_2_3_2::EAS::SanMarinoVatNumber),
623            EAS::TurkeyVatNumber => Ok(crate::zugferd_2_3_2::EAS::TurkeyVatNumber),
624            EAS::HolySeeVaticanCityStateVatNumber => Ok(crate::zugferd_2_3_2::EAS::HolySeeVaticanCityStateVatNumber),
625            EAS::FrenchVatNumber => Ok(crate::zugferd_2_3_2::EAS::FrenchVatNumber),
626            EAS::EmployerIdentificationNumberEinUsa => Ok(crate::zugferd_2_3_2::EAS::EmployerIdentificationNumberEinUsa),
627            EAS::OFTPOdetteFileTransferProtocol => Ok(crate::zugferd_2_3_2::EAS::OFTPOdetteFileTransferProtocol),
628            EAS::X400AddressForMailText => Ok(crate::zugferd_2_3_2::EAS::X400AddressForMailText),
629            EAS::As2Exchange => Ok(crate::zugferd_2_3_2::EAS::As2Exchange),
630            EAS::FileTransferProtocol => Ok(crate::zugferd_2_3_2::EAS::FileTransferProtocol),
631            EAS::ElectronicMailSmpt => Ok(crate::zugferd_2_3_2::EAS::ElectronicMailSmpt),
632            EAS::IdentificationNumberEconomicSubjectsIco => Err(ErrFromEasToCrateZugferd232Eas::IdentificationNumberEconomicSubjectsIco),
633            EAS::IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127 => Err(ErrFromEasToCrateZugferd232Eas::IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127),
634            EAS::RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales => Err(ErrFromEasToCrateZugferd232Eas::RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales),
635        }
636    }
637}
638
639/// All the variants of EAS that are not matched to any variant of crate::zugferd_2_3_2::EAS
640#[derive(Debug, PartialEq, Eq, Hash)]
641pub enum ErrFromEasToCrateZugferd232Eas {
642    IdentificationNumberEconomicSubjectsIco,
643    IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127,
644    RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales,
645}
646
647impl std::fmt::Display for ErrFromEasToCrateZugferd232Eas {
648    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
649        match self {
650            ErrFromEasToCrateZugferd232Eas::IdentificationNumberEconomicSubjectsIco => write!(f, "IdentificationNumberEconomicSubjectsIco has no corresponding value in crate::zugferd_2_3_2::EAS"),
651            ErrFromEasToCrateZugferd232Eas::IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127 => write!(f, "IdentificationNumberEconomicSubjectIcoActOnStateStatistics29November200127 has no corresponding value in crate::zugferd_2_3_2::EAS"),
652            ErrFromEasToCrateZugferd232Eas::RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales => write!(f, "RegisterLegalPersonsInFrenchRépertoireDesPersonnesMorales has no corresponding value in crate::zugferd_2_3_2::EAS"),
653        }
654    }
655}
656
657impl std::error::Error for ErrFromEasToCrateZugferd232Eas {}
658
659impl std::convert::TryFrom<crate::zugferd_2_3_2::EAS> for EAS {
660    type Error = ErrFromCrateZugferd232EasToEas;
661    fn try_from(value: crate::zugferd_2_3_2::EAS) -> Result<EAS, Self::Error> {
662        match value {
663            crate::zugferd_2_3_2::EAS::SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene => Ok(EAS::SystemInformationEtRepertoireDesEntrepriseEtDesEtablissementsSirene),
664            crate::zugferd_2_3_2::EAS::Organisationsnummer => Ok(EAS::Organisationsnummer),
665            crate::zugferd_2_3_2::EAS::SiretCode => Ok(EAS::SiretCode),
666            crate::zugferd_2_3_2::EAS::LyTunnus => Ok(EAS::LyTunnus),
667            crate::zugferd_2_3_2::EAS::DataUniversalNumberingSystemDUNSNumber => Ok(EAS::DataUniversalNumberingSystemDUNSNumber),
668            crate::zugferd_2_3_2::EAS::EanLocationCode => Ok(EAS::EanLocationCode),
669            crate::zugferd_2_3_2::EAS::DanishChamberOfCommerceSchemeEdiraCompliant => Ok(EAS::TheDanishBusinessAuthorityPNumberDkP),
670            crate::zugferd_2_3_2::EAS::FtiEdiforumItaliaEdiraCompliant => Ok(EAS::FtiEdiforumItaliaEdiraCompliant),
671            crate::zugferd_2_3_2::EAS::VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant => Ok(EAS::VerenigingVanKamersVanKoophandelEnFabriekenInNederlandAssociationChambersCommerceAndIndustryInNetherlandsSchemeEdiraCompliant),
672            crate::zugferd_2_3_2::EAS::DirectoratesEuropeanCommission => Ok(EAS::DirectoratesEuropeanCommission),
673            crate::zugferd_2_3_2::EAS::SiaObjectIdentifiers => Ok(EAS::SiaObjectIdentifiers),
674            crate::zugferd_2_3_2::EAS::SecetiObjectIdentifiers => Ok(EAS::SecetiObjectIdentifiers),
675            crate::zugferd_2_3_2::EAS::StandardCompanyCode => Ok(EAS::StandardCompanyCode),
676            crate::zugferd_2_3_2::EAS::AustralianBusinessNumberAbnScheme => Ok(EAS::AustralianBusinessNumberAbnScheme),
677            crate::zugferd_2_3_2::EAS::TeikokuCompanyCode => Ok(EAS::TeikokuCompanyCode),
678            crate::zugferd_2_3_2::EAS::OdetteInternationalLimited => Ok(EAS::OdetteInternationalLimited),
679            crate::zugferd_2_3_2::EAS::NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb => Ok(EAS::NuméroDidentificationSuisseDesEnterprisesIdeSwissUniqueBusinessIdentificationNumberUidb),
680            crate::zugferd_2_3_2::EAS::Digstorg => Ok(EAS::Digstorg),
681            crate::zugferd_2_3_2::EAS::CorporateNumberTheSocialSecurityAndTaxNumberSystem => Ok(EAS::CorporateNumberTheSocialSecurityAndTaxNumberSystem),
682            crate::zugferd_2_3_2::EAS::DutchOriginatorsIdentificationNumber => Ok(EAS::DutchOriginatorsIdentificationNumber),
683            crate::zugferd_2_3_2::EAS::CentreRegistersAndInformationSystemsMinistryJustice => Ok(EAS::CentreRegistersAndInformationSystemsMinistryJustice),
684            crate::zugferd_2_3_2::EAS::EnhetsregisteretVedBronnoysundregisterne => Ok(EAS::EnhetsregisteretVedBronnoysundregisterne),
685            crate::zugferd_2_3_2::EAS::UblBePartyIdentifier => Ok(EAS::UblBePartyIdentifier),
686            crate::zugferd_2_3_2::EAS::KoiosOpenTechnicalDictionary => Ok(EAS::KoiosOpenTechnicalDictionary),
687            crate::zugferd_2_3_2::EAS::SingaporeUenIdentifier => Ok(EAS::SingaporeUenIdentifier),
688            crate::zugferd_2_3_2::EAS::KennitalaIcelandLegalIdForIndividualsAndLegalEntities => Ok(EAS::KennitalaIcelandLegalIdForIndividualsAndLegalEntities),
689            crate::zugferd_2_3_2::EAS::Erstorg => Ok(EAS::Erstorg),
690            crate::zugferd_2_3_2::EAS::GlobalLegalEntityIdentifierGleif => Ok(EAS::GlobalLegalEntityIdentifierGleif),
691            crate::zugferd_2_3_2::EAS::LegalEntityCodeLithuania => Ok(EAS::LegalEntityCodeLithuania),
692            crate::zugferd_2_3_2::EAS::CodiceUnivocoUnitàOrganizzativaIpa => Ok(EAS::CodiceUnivocoUnitàOrganizzativaIpa),
693            crate::zugferd_2_3_2::EAS::IndirizzoDiPostaElettronicaCertificata => Ok(EAS::IndirizzoDiPostaElettronicaCertificata),
694            crate::zugferd_2_3_2::EAS::EdeliveryNetworkParticipantIdentifier => Ok(EAS::EdeliveryNetworkParticipantIdentifier),
695            crate::zugferd_2_3_2::EAS::LeitwegId => Ok(EAS::LeitwegId),
696            crate::zugferd_2_3_2::EAS::Coddest => Ok(EAS::Coddest),
697            crate::zugferd_2_3_2::EAS::NumeroDentrepriseOndernemingsnummerUnternehmensnummer => Ok(EAS::NumeroDentrepriseOndernemingsnummerUnternehmensnummer),
698            crate::zugferd_2_3_2::EAS::Gs1IdentificationKeys => Ok(EAS::Gs1IdentificationKeys),
699            crate::zugferd_2_3_2::EAS::CodiceFiscale => Ok(EAS::CodiceFiscale),
700            crate::zugferd_2_3_2::EAS::PartitaIva => Ok(EAS::PartitaIva),
701            crate::zugferd_2_3_2::EAS::FinnishOrganizationIdentifier => Ok(EAS::FinnishOrganizationIdentifier),
702            crate::zugferd_2_3_2::EAS::FinnishOrganizationValueAddTaxIdentifier => Ok(EAS::FinnishOrganizationValueAddTaxIdentifier),
703            crate::zugferd_2_3_2::EAS::NetServiceId => Ok(EAS::NetServiceId),
704            crate::zugferd_2_3_2::EAS::Ovtcode => Ok(EAS::Ovtcode),
705            crate::zugferd_2_3_2::EAS::TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber => Ok(EAS::TheNetherlandsChamberCommerceAndIndustryEstablishmentNumber),
706            crate::zugferd_2_3_2::EAS::UnifiedRegistrationNumberLatvia => Ok(EAS::UnifiedRegistrationNumberLatvia),
707            crate::zugferd_2_3_2::EAS::TheRegisteredNumberQualifiedInvoiceIssuer => Ok(EAS::TheRegisteredNumberQualifiedInvoiceIssuer),
708            crate::zugferd_2_3_2::EAS::FrctcElectronicAddress => Ok(EAS::FrctcElectronicAddress),
709            crate::zugferd_2_3_2::EAS::NationalEInvoicingFramework => Ok(EAS::NationalEInvoicingFramework),
710            crate::zugferd_2_3_2::EAS::UaeTaxIdentificationNumberTin => Ok(EAS::UaeTaxIdentificationNumberTin),
711            crate::zugferd_2_3_2::EAS::HungaryVatNumber => Ok(EAS::HungaryVatNumber),
712            crate::zugferd_2_3_2::EAS::BusinessRegistersNetwork => Ok(EAS::BusinessRegistersNetwork),
713            crate::zugferd_2_3_2::EAS::ÖsterreichischeUmsatzsteuerIdentifikationsnummer => Ok(EAS::ÖsterreichischeUmsatzsteuerIdentifikationsnummer),
714            crate::zugferd_2_3_2::EAS::ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen => Ok(EAS::ÖsterreichischesVerwaltungsBzwOrganisationskennzeichen),
715            crate::zugferd_2_3_2::EAS::SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT => Ok(EAS::SocietyForWorldwideInterbankFinancialTelecommunicationSWIFT),
716            crate::zugferd_2_3_2::EAS::KennzifferDesUnternehmensregisters => Ok(EAS::KennzifferDesUnternehmensregisters),
717            crate::zugferd_2_3_2::EAS::AgenciaEspañolaDeAdministraciónTributaria => Ok(EAS::AgenciaEspañolaDeAdministraciónTributaria),
718            crate::zugferd_2_3_2::EAS::AndorraVatNumber => Ok(EAS::AndorraVatNumber),
719            crate::zugferd_2_3_2::EAS::AlbaniaVatNumber => Ok(EAS::AlbaniaVatNumber),
720            crate::zugferd_2_3_2::EAS::BosniaAndHerzegovinaVatNumber => Ok(EAS::BosniaAndHerzegovinaVatNumber),
721            crate::zugferd_2_3_2::EAS::BelgiumVatNumber => Ok(EAS::BelgiumVatNumber),
722            crate::zugferd_2_3_2::EAS::BulgariaVatNumber => Ok(EAS::BulgariaVatNumber),
723            crate::zugferd_2_3_2::EAS::SwitzerlandVatNumber => Ok(EAS::SwitzerlandVatNumber),
724            crate::zugferd_2_3_2::EAS::CyprusVatNumber => Ok(EAS::CyprusVatNumber),
725            crate::zugferd_2_3_2::EAS::CzechRepublicVatNumber => Ok(EAS::CzechRepublicVatNumber),
726            crate::zugferd_2_3_2::EAS::GermanyVatNumber => Ok(EAS::GermanyVatNumber),
727            crate::zugferd_2_3_2::EAS::EstoniaVatNumber => Ok(EAS::EstoniaVatNumber),
728            crate::zugferd_2_3_2::EAS::UnitedKingdomVatNumber => Ok(EAS::UnitedKingdomVatNumber),
729            crate::zugferd_2_3_2::EAS::GreeceVatNumber => Ok(EAS::GreeceVatNumber),
730            crate::zugferd_2_3_2::EAS::CroatiaVatNumber => Ok(EAS::CroatiaVatNumber),
731            crate::zugferd_2_3_2::EAS::IrelandVatNumber => Ok(EAS::IrelandVatNumber),
732            crate::zugferd_2_3_2::EAS::LiechtensteinVatNumber => Ok(EAS::LiechtensteinVatNumber),
733            crate::zugferd_2_3_2::EAS::LithuaniaVatNumber => Ok(EAS::LithuaniaVatNumber),
734            crate::zugferd_2_3_2::EAS::LuxemburgVatNumber => Ok(EAS::LuxemburgVatNumber),
735            crate::zugferd_2_3_2::EAS::LatviaVatNumber => Ok(EAS::LatviaVatNumber),
736            crate::zugferd_2_3_2::EAS::MonacoVatNumber => Ok(EAS::MonacoVatNumber),
737            crate::zugferd_2_3_2::EAS::MontenegroVatNumber => Ok(EAS::MontenegroVatNumber),
738            crate::zugferd_2_3_2::EAS::MacedoniaFormerYugoslavRepublicVatNumber => Ok(EAS::MacedoniaFormerYugoslavRepublicVatNumber),
739            crate::zugferd_2_3_2::EAS::MaltaVatNumber => Ok(EAS::MaltaVatNumber),
740            crate::zugferd_2_3_2::EAS::NetherlandsVatNumber => Ok(EAS::NetherlandsVatNumber),
741            crate::zugferd_2_3_2::EAS::PolandVatNumber => Ok(EAS::PolandVatNumber),
742            crate::zugferd_2_3_2::EAS::PortugalVatNumber => Ok(EAS::PortugalVatNumber),
743            crate::zugferd_2_3_2::EAS::RomaniaVatNumber => Ok(EAS::RomaniaVatNumber),
744            crate::zugferd_2_3_2::EAS::SerbiaVatNumber => Ok(EAS::SerbiaVatNumber),
745            crate::zugferd_2_3_2::EAS::SloveniaVatNumber => Ok(EAS::SloveniaVatNumber),
746            crate::zugferd_2_3_2::EAS::SlovakiaVatNumber => Ok(EAS::SlovakiaVatNumber),
747            crate::zugferd_2_3_2::EAS::SanMarinoVatNumber => Ok(EAS::SanMarinoVatNumber),
748            crate::zugferd_2_3_2::EAS::TurkeyVatNumber => Ok(EAS::TurkeyVatNumber),
749            crate::zugferd_2_3_2::EAS::HolySeeVaticanCityStateVatNumber => Ok(EAS::HolySeeVaticanCityStateVatNumber),
750            crate::zugferd_2_3_2::EAS::FrenchVatNumber => Ok(EAS::FrenchVatNumber),
751            crate::zugferd_2_3_2::EAS::EmployerIdentificationNumberEinUsa => Ok(EAS::EmployerIdentificationNumberEinUsa),
752            crate::zugferd_2_3_2::EAS::OFTPOdetteFileTransferProtocol => Ok(EAS::OFTPOdetteFileTransferProtocol),
753            crate::zugferd_2_3_2::EAS::X400AddressForMailText => Ok(EAS::X400AddressForMailText),
754            crate::zugferd_2_3_2::EAS::As2Exchange => Ok(EAS::As2Exchange),
755            crate::zugferd_2_3_2::EAS::FileTransferProtocol => Ok(EAS::FileTransferProtocol),
756            crate::zugferd_2_3_2::EAS::ElectronicMailSmpt => Ok(EAS::ElectronicMailSmpt),
757            crate::zugferd_2_3_2::EAS::DanishMinistryInteriorAndHealth => Err(ErrFromCrateZugferd232EasToEas::DanishMinistryInteriorAndHealth),
758        }
759    }
760}
761
762/// All the variants of crate::zugferd_2_3_2::EAS that are not matched to any variant of EAS
763#[derive(Debug, PartialEq, Eq, Hash)]
764pub enum ErrFromCrateZugferd232EasToEas {
765    DanishMinistryInteriorAndHealth,
766}
767
768impl std::fmt::Display for ErrFromCrateZugferd232EasToEas {
769    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
770        match self {
771            ErrFromCrateZugferd232EasToEas::DanishMinistryInteriorAndHealth => write!(
772                f,
773                "DanishMinistryInteriorAndHealth has no corresponding value in EAS"
774            ),
775        }
776    }
777}
778
779impl std::error::Error for ErrFromCrateZugferd232EasToEas {}
780// End: (Version) TryFrom crate::zugferd_2_3_2::EAS to EAS