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 Item {
7 ProductVersionNumber,
9 Assembly,
11 HibcHealthIndustryBarCode,
13 ColdRollNumber,
15 HotRollNumber,
17 SlabNumber,
19 SoftwareRevisionNumber,
21 UpcUniversalProductCodeConsumerPackageCode155,
23 UpcUniversalProductCodeConsumerPackageCode155_Dup,
25 SampleNumber,
27 PackNumber,
29 UpcUniversalProductCodeShippingContainerCode12,
31 UpcUniversalProductCodeEanEuropeanArticleNumber,
33 UpcUniversalProductCodeSuffix,
35 StateLabelCode,
37 HeatNumber,
39 CouponNumber,
41 ResourceNumber,
43 WorkTaskNumber,
45 PriceLookUpNumber,
47 NsnNorthAtlanticTreatyOrganizationStockNumber,
49 RefinedProductCode,
51 Exhibit,
53 EndItem,
55 FederalSupplyClassification,
57 EngineeringDataList,
59 MilestoneEventNumber,
61 LotNumber,
63 NationalDrugCode442Format,
65 NationalDrugCode532Format,
67 NationalDrugCode541Format,
69 NationalDrugCode542Format,
71 NationalDrugCode,
73 PartNumber,
75 LocalStockNumberLsn,
77 NextHigherAssemblyNumber,
79 DataCategory,
81 ControlNumber,
83 SpecialMaterialIdentificationCode,
85 LocallyAssignedControlNumber,
87 BuyersColour,
89 BuyersPartNumber,
91 VariableMeasureProductCode,
93 FinancialPhase,
95 ContractBreakdown,
97 TechnicalPhase,
99 DyeLotNumber,
101 DailyStatementActivities,
103 PeriodicalStatementActivitiesWithinABilaterally,
105 CalendarWeekStatementActivities,
107 CalendarMonthStatementActivities,
109 OriginalEquipmentNumber,
111 IndustryCommodityCode,
113 CommodityGrouping,
115 ColourNumber,
117 ContractNumber,
119 CustomsArticleNumber,
121 DrawingRevisionNumber,
123 Drawing,
125 EngineeringChangeLevel,
127 MaterialCode,
129 EmdnEuropeanMedicalDeviceNomenclature,
131 InternationalArticleNumberingAssociationEan,
133 FishSpecies,
135 BuyersInternalProductGroupCode,
137 GlobalModelNumber,
139 NationalProductGroupCode,
141 GeneralSpecificationNumber,
143 HarmonisedSystem,
145 IsbnInternationalStandardBookNumber,
147 BuyersItemNumber,
149 IssnInternationalStandardSerialNumber,
151 BuyersStyleNumber,
153 BuyersSizeCode,
155 MachineNumber,
157 ManufacturersProducersArticleNumber,
159 ModelNumber,
161 ProductServiceIdentificationNumber,
163 BatchNumber,
165 CustomerOrderNumber,
167 PartNumberDescription,
169 PurchasersOrderLineNumber,
171 PurchaseOrderNumber,
173 PromotionalVariantNumber,
175 BuyersQualifierForSize,
177 ReturnableContainerNumber,
179 ReleaseNumber,
181 RunNumber,
183 RecordKeepingModelYear,
185 SuppliersArticleNumber,
187 StandardGroupProductsMixedAssortment,
189 SkuStockKeepingUnit,
191 SerialNumber,
193 RskNumber,
195 IflsInstitutFrancaisDuLibreService5DigitProduct,
197 IflsInstitutFrancaisDuLibreService9DigitProduct,
199 Gs1GlobalTradeItemNumber,
201 EdisEnergyDataIdentificationSystem,
203 SlaughterNumber,
205 OfficialAnimalNumber,
207 HarmonizedTariffSchedule,
209 SuppliersSupplierArticleNumber,
211 _46LevelDotCode,
213 AirlineTariff6d,
215 Title49CodeFederalRegulations,
217 InternationalCivilAviationAdministrationCode,
219 HazardousMaterialsIdDot,
221 Endorsement,
223 AirForceRegulation714,
225 Breed,
227 ChemicalAbstractServiceCasRegistryNumber,
229 EngineModelDesignation,
231 InstitutionalMeatPurchaseSpecificationsImpsNumber,
233 PriceLookUpCodePlu,
235 InternationalMaritimeOrganizationImoCode,
237 BureauExplosives600ARail,
239 UnitedNationsDangerousGoodsList,
241 InternationalCodeBotanicalNomenclatureIcbn,
243 InternationalCodeZoologicalNomenclatureIczn,
245 InternationalCodeNomenclatureForCultivatedPlants,
247 DistributorSArticleIdentifier,
249 NorwegianClassificationSystemEnva,
251 SupplierAssignedClassification,
253 MexicanClassificationSystemAmece,
255 GermanClassificationSystemCcg,
257 FinnishClassificationSystemEanfin,
259 CanadianClassificationSystemIcc,
261 FrenchClassificationSystemIfls5,
263 StyleNumber,
265 DutchClassificationSystemCbl,
267 JapaneseClassificationSystemJicfs,
269 EuropeanUnionDairySubsidyEligibilityClassification,
271 Gs1SpainClassificationSystem,
273 Gs1PolandClassificationSystem,
275 FederalAgencyOnTechnicalRegulatingAndMetrology,
277 EfficientConsumerResponseEcrAustriaClassification,
279 Gs1ItalyClassificationSystem,
281 CpvCommonProcurementVocabulary,
283 IfdaInternationalFoodserviceDistributorsAssociation,
285 AhfsAmericanHospitalFormularyServicePharmacologic,
287 AtcAnatomicalTherapeuticChemicalClassificationSystem,
289 CladimedClassificationDesDispositifsMédicaux,
291 CmdrCanadianMedicalDeviceRegulationsClassification,
293 CndmClassificazioneNazionaleDeiDispositiviMedici,
295 UkDmDDictionaryMedicinesDevicesStandardCoding,
297 EclSs,
299 EdmaEuropeanDiagnosticManufacturersAssociation,
301 EgarEuropeanGenericArticleRegister,
303 GmdnGlobalMedicalDevicesNomenclature,
305 GpiGenericProductIdentifier,
307 HcpcsHealthcareCommonProcedureCodingSystem,
309 IcpsInternationalClassificationForPatientSafety,
311 MeddraMedicalDictionaryForRegulatoryActivities,
313 MedicalColumbus,
315 NapcsNorthAmericanProductClassificationSystem,
317 NhsNationalHealthServicesEclass,
319 UsFdaFoodAndDrugAdministrationProductCode,
321 SnomedCtSystematizedNomenclatureMedicineClinical,
323 UmdnsUniversalMedicalDeviceNomenclatureSystem,
325 Gs1GlobalReturnableAssetIdentifierNonSerialised,
327 Imei,
329 WasteTypeEmsa,
331 ShipsStoreClassificationType,
333 EmergencyFireCode,
335 EmergencySpillageCode,
337 ImdgPackingGroup,
339 MarpolCodeIbc,
341 ImdgSubsidiaryRiskClass,
343 TransportGroupNumber,
345 TaxonomicSerialNumber,
347 ImdgMainHazardClass,
349 EuCombinedNomenclature,
351 TherapeuticClassificationNumber,
353 EuropeanWasteCatalogue,
355 PriceGroupingCode,
357 Unspsc,
359 EuRohsDirective,
361 UltimateCustomersArticleNumber,
363 UpcUniversalProductCode,
365 VendorItemNumber,
367 VendorsSellersPartNumber,
369 VendorsSupplementalItemNumber,
371 VendorSpecificationNumber,
373 MutuallyDefined,
375}
376
377impl std::fmt::Display for Item {
378 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
379 write!(f, "{}", <Self as crate::Code>::code(*self))
380 }
381}
382
383impl std::str::FromStr for Item {
384 type Err = crate::ParseError<Self>;
385 fn from_str(s: &str) -> Result<Self, Self::Err> {
386 <Self as crate::FromCode>::from_code(s)
387 .ok_or_else(|| crate::ParseError::<Self>::new(s.to_owned()))
388 }
389}
390
391impl crate::Code for Item {
392 fn code(self) -> &'static str {
393 match self {
394 Item::ProductVersionNumber => "AA",
395 Item::Assembly => "AB",
396 Item::HibcHealthIndustryBarCode => "AC",
397 Item::ColdRollNumber => "AD",
398 Item::HotRollNumber => "AE",
399 Item::SlabNumber => "AF",
400 Item::SoftwareRevisionNumber => "AG",
401 Item::UpcUniversalProductCodeConsumerPackageCode155 => "AH",
402 Item::UpcUniversalProductCodeConsumerPackageCode155_Dup => "AI",
403 Item::SampleNumber => "AJ",
404 Item::PackNumber => "AK",
405 Item::UpcUniversalProductCodeShippingContainerCode12 => "AL",
406 Item::UpcUniversalProductCodeEanEuropeanArticleNumber => "AM",
407 Item::UpcUniversalProductCodeSuffix => "AN",
408 Item::StateLabelCode => "AO",
409 Item::HeatNumber => "AP",
410 Item::CouponNumber => "AQ",
411 Item::ResourceNumber => "AR",
412 Item::WorkTaskNumber => "AS",
413 Item::PriceLookUpNumber => "AT",
414 Item::NsnNorthAtlanticTreatyOrganizationStockNumber => "AU",
415 Item::RefinedProductCode => "AV",
416 Item::Exhibit => "AW",
417 Item::EndItem => "AX",
418 Item::FederalSupplyClassification => "AY",
419 Item::EngineeringDataList => "AZ",
420 Item::MilestoneEventNumber => "BA",
421 Item::LotNumber => "BB",
422 Item::NationalDrugCode442Format => "BC",
423 Item::NationalDrugCode532Format => "BD",
424 Item::NationalDrugCode541Format => "BE",
425 Item::NationalDrugCode542Format => "BF",
426 Item::NationalDrugCode => "BG",
427 Item::PartNumber => "BH",
428 Item::LocalStockNumberLsn => "BI",
429 Item::NextHigherAssemblyNumber => "BJ",
430 Item::DataCategory => "BK",
431 Item::ControlNumber => "BL",
432 Item::SpecialMaterialIdentificationCode => "BM",
433 Item::LocallyAssignedControlNumber => "BN",
434 Item::BuyersColour => "BO",
435 Item::BuyersPartNumber => "BP",
436 Item::VariableMeasureProductCode => "BQ",
437 Item::FinancialPhase => "BR",
438 Item::ContractBreakdown => "BS",
439 Item::TechnicalPhase => "BT",
440 Item::DyeLotNumber => "BU",
441 Item::DailyStatementActivities => "BV",
442 Item::PeriodicalStatementActivitiesWithinABilaterally => "BW",
443 Item::CalendarWeekStatementActivities => "BX",
444 Item::CalendarMonthStatementActivities => "BY",
445 Item::OriginalEquipmentNumber => "BZ",
446 Item::IndustryCommodityCode => "CC",
447 Item::CommodityGrouping => "CG",
448 Item::ColourNumber => "CL",
449 Item::ContractNumber => "CR",
450 Item::CustomsArticleNumber => "CV",
451 Item::DrawingRevisionNumber => "DR",
452 Item::Drawing => "DW",
453 Item::EngineeringChangeLevel => "EC",
454 Item::MaterialCode => "EF",
455 Item::EmdnEuropeanMedicalDeviceNomenclature => "EMD",
456 Item::InternationalArticleNumberingAssociationEan => "EN",
457 Item::FishSpecies => "FS",
458 Item::BuyersInternalProductGroupCode => "GB",
459 Item::GlobalModelNumber => "GMN",
460 Item::NationalProductGroupCode => "GN",
461 Item::GeneralSpecificationNumber => "GS",
462 Item::HarmonisedSystem => "HS",
463 Item::IsbnInternationalStandardBookNumber => "IB",
464 Item::BuyersItemNumber => "IN",
465 Item::IssnInternationalStandardSerialNumber => "IS",
466 Item::BuyersStyleNumber => "IT",
467 Item::BuyersSizeCode => "IZ",
468 Item::MachineNumber => "MA",
469 Item::ManufacturersProducersArticleNumber => "MF",
470 Item::ModelNumber => "MN",
471 Item::ProductServiceIdentificationNumber => "MP",
472 Item::BatchNumber => "NB",
473 Item::CustomerOrderNumber => "ON",
474 Item::PartNumberDescription => "PD",
475 Item::PurchasersOrderLineNumber => "PL",
476 Item::PurchaseOrderNumber => "PO",
477 Item::PromotionalVariantNumber => "PV",
478 Item::BuyersQualifierForSize => "QS",
479 Item::ReturnableContainerNumber => "RC",
480 Item::ReleaseNumber => "RN",
481 Item::RunNumber => "RU",
482 Item::RecordKeepingModelYear => "RY",
483 Item::SuppliersArticleNumber => "SA",
484 Item::StandardGroupProductsMixedAssortment => "SG",
485 Item::SkuStockKeepingUnit => "SK",
486 Item::SerialNumber => "SN",
487 Item::RskNumber => "SRS",
488 Item::IflsInstitutFrancaisDuLibreService5DigitProduct => "SRT",
489 Item::IflsInstitutFrancaisDuLibreService9DigitProduct => "SRU",
490 Item::Gs1GlobalTradeItemNumber => "SRV",
491 Item::EdisEnergyDataIdentificationSystem => "SRW",
492 Item::SlaughterNumber => "SRX",
493 Item::OfficialAnimalNumber => "SRY",
494 Item::HarmonizedTariffSchedule => "SRZ",
495 Item::SuppliersSupplierArticleNumber => "SS",
496 Item::_46LevelDotCode => "SSA",
497 Item::AirlineTariff6d => "SSB",
498 Item::Title49CodeFederalRegulations => "SSC",
499 Item::InternationalCivilAviationAdministrationCode => "SSD",
500 Item::HazardousMaterialsIdDot => "SSE",
501 Item::Endorsement => "SSF",
502 Item::AirForceRegulation714 => "SSG",
503 Item::Breed => "SSH",
504 Item::ChemicalAbstractServiceCasRegistryNumber => "SSI",
505 Item::EngineModelDesignation => "SSJ",
506 Item::InstitutionalMeatPurchaseSpecificationsImpsNumber => "SSK",
507 Item::PriceLookUpCodePlu => "SSL",
508 Item::InternationalMaritimeOrganizationImoCode => "SSM",
509 Item::BureauExplosives600ARail => "SSN",
510 Item::UnitedNationsDangerousGoodsList => "SSO",
511 Item::InternationalCodeBotanicalNomenclatureIcbn => "SSP",
512 Item::InternationalCodeZoologicalNomenclatureIczn => "SSQ",
513 Item::InternationalCodeNomenclatureForCultivatedPlants => "SSR",
514 Item::DistributorSArticleIdentifier => "SSS",
515 Item::NorwegianClassificationSystemEnva => "SST",
516 Item::SupplierAssignedClassification => "SSU",
517 Item::MexicanClassificationSystemAmece => "SSV",
518 Item::GermanClassificationSystemCcg => "SSW",
519 Item::FinnishClassificationSystemEanfin => "SSX",
520 Item::CanadianClassificationSystemIcc => "SSY",
521 Item::FrenchClassificationSystemIfls5 => "SSZ",
522 Item::StyleNumber => "ST",
523 Item::DutchClassificationSystemCbl => "STA",
524 Item::JapaneseClassificationSystemJicfs => "STB",
525 Item::EuropeanUnionDairySubsidyEligibilityClassification => "STC",
526 Item::Gs1SpainClassificationSystem => "STD",
527 Item::Gs1PolandClassificationSystem => "STE",
528 Item::FederalAgencyOnTechnicalRegulatingAndMetrology => "STF",
529 Item::EfficientConsumerResponseEcrAustriaClassification => "STG",
530 Item::Gs1ItalyClassificationSystem => "STH",
531 Item::CpvCommonProcurementVocabulary => "STI",
532 Item::IfdaInternationalFoodserviceDistributorsAssociation => "STJ",
533 Item::AhfsAmericanHospitalFormularyServicePharmacologic => "STK",
534 Item::AtcAnatomicalTherapeuticChemicalClassificationSystem => "STL",
535 Item::CladimedClassificationDesDispositifsMédicaux => "STM",
536 Item::CmdrCanadianMedicalDeviceRegulationsClassification => "STN",
537 Item::CndmClassificazioneNazionaleDeiDispositiviMedici => "STO",
538 Item::UkDmDDictionaryMedicinesDevicesStandardCoding => "STP",
539 Item::EclSs => "STQ",
540 Item::EdmaEuropeanDiagnosticManufacturersAssociation => "STR",
541 Item::EgarEuropeanGenericArticleRegister => "STS",
542 Item::GmdnGlobalMedicalDevicesNomenclature => "STT",
543 Item::GpiGenericProductIdentifier => "STU",
544 Item::HcpcsHealthcareCommonProcedureCodingSystem => "STV",
545 Item::IcpsInternationalClassificationForPatientSafety => "STW",
546 Item::MeddraMedicalDictionaryForRegulatoryActivities => "STX",
547 Item::MedicalColumbus => "STY",
548 Item::NapcsNorthAmericanProductClassificationSystem => "STZ",
549 Item::NhsNationalHealthServicesEclass => "SUA",
550 Item::UsFdaFoodAndDrugAdministrationProductCode => "SUB",
551 Item::SnomedCtSystematizedNomenclatureMedicineClinical => "SUC",
552 Item::UmdnsUniversalMedicalDeviceNomenclatureSystem => "SUD",
553 Item::Gs1GlobalReturnableAssetIdentifierNonSerialised => "SUE",
554 Item::Imei => "SUF",
555 Item::WasteTypeEmsa => "SUG",
556 Item::ShipsStoreClassificationType => "SUH",
557 Item::EmergencyFireCode => "SUI",
558 Item::EmergencySpillageCode => "SUJ",
559 Item::ImdgPackingGroup => "SUK",
560 Item::MarpolCodeIbc => "SUL",
561 Item::ImdgSubsidiaryRiskClass => "SUM",
562 Item::TransportGroupNumber => "TG",
563 Item::TaxonomicSerialNumber => "TSN",
564 Item::ImdgMainHazardClass => "TSO",
565 Item::EuCombinedNomenclature => "TSP",
566 Item::TherapeuticClassificationNumber => "TSQ",
567 Item::EuropeanWasteCatalogue => "TSR",
568 Item::PriceGroupingCode => "TSS",
569 Item::Unspsc => "TST",
570 Item::EuRohsDirective => "TSU",
571 Item::UltimateCustomersArticleNumber => "UA",
572 Item::UpcUniversalProductCode => "UP",
573 Item::VendorItemNumber => "VN",
574 Item::VendorsSellersPartNumber => "VP",
575 Item::VendorsSupplementalItemNumber => "VS",
576 Item::VendorSpecificationNumber => "VX",
577 Item::MutuallyDefined => "ZZZ",
578 }
579 }
580}
581
582impl crate::Description for Item {
583 fn description(self) -> &'static str {
584 match self {
585 Item::ProductVersionNumber => "Product version number",
586 Item::Assembly => "Assembly",
587 Item::HibcHealthIndustryBarCode => "HIBC (Health Industry Bar Code)",
588 Item::ColdRollNumber => "Cold roll number",
589 Item::HotRollNumber => "Hot roll number",
590 Item::SlabNumber => "Slab number",
591 Item::SoftwareRevisionNumber => "Software revision number",
592 Item::UpcUniversalProductCodeConsumerPackageCode155 => {
593 "UPC (Universal Product Code) Consumer package code (1-5-5)"
594 }
595 Item::UpcUniversalProductCodeConsumerPackageCode155_Dup => {
596 "UPC (Universal Product Code) Consumer package code (1-5-5-"
597 }
598 Item::SampleNumber => "Sample number",
599 Item::PackNumber => "Pack number",
600 Item::UpcUniversalProductCodeShippingContainerCode12 => {
601 "UPC (Universal Product Code) Shipping container code (1-2-"
602 }
603 Item::UpcUniversalProductCodeEanEuropeanArticleNumber => {
604 "UPC (Universal Product Code)/EAN (European article number)"
605 }
606 Item::UpcUniversalProductCodeSuffix => "UPC (Universal Product Code) suffix",
607 Item::StateLabelCode => "State label code",
608 Item::HeatNumber => "Heat number",
609 Item::CouponNumber => "Coupon number",
610 Item::ResourceNumber => "Resource number",
611 Item::WorkTaskNumber => "Work task number",
612 Item::PriceLookUpNumber => "Price look up number",
613 Item::NsnNorthAtlanticTreatyOrganizationStockNumber => {
614 "NSN (North Atlantic Treaty Organization Stock Number)"
615 }
616 Item::RefinedProductCode => "Refined product code",
617 Item::Exhibit => "Exhibit",
618 Item::EndItem => "End item",
619 Item::FederalSupplyClassification => "Federal supply classification",
620 Item::EngineeringDataList => "Engineering data list",
621 Item::MilestoneEventNumber => "Milestone event number",
622 Item::LotNumber => "Lot number",
623 Item::NationalDrugCode442Format => "National drug code 4-4-2 format",
624 Item::NationalDrugCode532Format => "National drug code 5-3-2 format",
625 Item::NationalDrugCode541Format => "National drug code 5-4-1 format",
626 Item::NationalDrugCode542Format => "National drug code 5-4-2 format",
627 Item::NationalDrugCode => "National drug code",
628 Item::PartNumber => "Part number",
629 Item::LocalStockNumberLsn => "Local Stock Number (LSN)",
630 Item::NextHigherAssemblyNumber => "Next higher assembly number",
631 Item::DataCategory => "Data category",
632 Item::ControlNumber => "Control number",
633 Item::SpecialMaterialIdentificationCode => "Special material identification code",
634 Item::LocallyAssignedControlNumber => "Locally assigned control number",
635 Item::BuyersColour => "Buyer's colour",
636 Item::BuyersPartNumber => "Buyer's part number",
637 Item::VariableMeasureProductCode => "Variable measure product code",
638 Item::FinancialPhase => "Financial phase",
639 Item::ContractBreakdown => "Contract breakdown",
640 Item::TechnicalPhase => "Technical phase",
641 Item::DyeLotNumber => "Dye lot number",
642 Item::DailyStatementActivities => "Daily statement of activities",
643 Item::PeriodicalStatementActivitiesWithinABilaterally => {
644 "Periodical statement of activities within a bilaterally"
645 }
646 Item::CalendarWeekStatementActivities => "Calendar week statement of activities",
647 Item::CalendarMonthStatementActivities => "Calendar month statement of activities",
648 Item::OriginalEquipmentNumber => "Original equipment number",
649 Item::IndustryCommodityCode => "Industry commodity code",
650 Item::CommodityGrouping => "Commodity grouping",
651 Item::ColourNumber => "Colour number",
652 Item::ContractNumber => "Contract number",
653 Item::CustomsArticleNumber => "Customs article number",
654 Item::DrawingRevisionNumber => "Drawing revision number",
655 Item::Drawing => "Drawing",
656 Item::EngineeringChangeLevel => "Engineering change level",
657 Item::MaterialCode => "Material code",
658 Item::EmdnEuropeanMedicalDeviceNomenclature => {
659 "EMDN (European Medical Device Nomenclature)"
660 }
661 Item::InternationalArticleNumberingAssociationEan => {
662 "International Article Numbering Association (EAN)"
663 }
664 Item::FishSpecies => "Fish species",
665 Item::BuyersInternalProductGroupCode => "Buyer's internal product group code",
666 Item::GlobalModelNumber => "Global model number",
667 Item::NationalProductGroupCode => "National product group code",
668 Item::GeneralSpecificationNumber => "General specification number",
669 Item::HarmonisedSystem => "Harmonised system",
670 Item::IsbnInternationalStandardBookNumber => {
671 "ISBN (International Standard Book Number)"
672 }
673 Item::BuyersItemNumber => "Buyer's item number",
674 Item::IssnInternationalStandardSerialNumber => {
675 "ISSN (International Standard Serial Number)"
676 }
677 Item::BuyersStyleNumber => "Buyer's style number",
678 Item::BuyersSizeCode => "Buyer's size code",
679 Item::MachineNumber => "Machine number",
680 Item::ManufacturersProducersArticleNumber => {
681 "Manufacturer's (producer's) article number"
682 }
683 Item::ModelNumber => "Model number",
684 Item::ProductServiceIdentificationNumber => "Product/service identification number",
685 Item::BatchNumber => "Batch number",
686 Item::CustomerOrderNumber => "Customer order number",
687 Item::PartNumberDescription => "Part number description",
688 Item::PurchasersOrderLineNumber => "Purchaser's order line number",
689 Item::PurchaseOrderNumber => "Purchase order number",
690 Item::PromotionalVariantNumber => "Promotional variant number",
691 Item::BuyersQualifierForSize => "Buyer's qualifier for size",
692 Item::ReturnableContainerNumber => "Returnable container number",
693 Item::ReleaseNumber => "Release number",
694 Item::RunNumber => "Run number",
695 Item::RecordKeepingModelYear => "Record keeping of model year",
696 Item::SuppliersArticleNumber => "Supplier's article number",
697 Item::StandardGroupProductsMixedAssortment => {
698 "Standard group of products (mixed assortment)"
699 }
700 Item::SkuStockKeepingUnit => "SKU (Stock keeping unit)",
701 Item::SerialNumber => "Serial number",
702 Item::RskNumber => "RSK number",
703 Item::IflsInstitutFrancaisDuLibreService5DigitProduct => {
704 "IFLS (Institut Francais du Libre Service) 5 digit product"
705 }
706 Item::IflsInstitutFrancaisDuLibreService9DigitProduct => {
707 "IFLS (Institut Francais du Libre Service) 9 digit product"
708 }
709 Item::Gs1GlobalTradeItemNumber => "GS1 Global Trade Item Number",
710 Item::EdisEnergyDataIdentificationSystem => "EDIS (Energy Data Identification System)",
711 Item::SlaughterNumber => "Slaughter number",
712 Item::OfficialAnimalNumber => "Official animal number",
713 Item::HarmonizedTariffSchedule => "Harmonized tariff schedule",
714 Item::SuppliersSupplierArticleNumber => "Supplier's supplier article number",
715 Item::_46LevelDotCode => "46 Level DOT Code",
716 Item::AirlineTariff6d => "Airline Tariff 6D",
717 Item::Title49CodeFederalRegulations => "Title 49 Code of Federal Regulations",
718 Item::InternationalCivilAviationAdministrationCode => {
719 "International Civil Aviation Administration code"
720 }
721 Item::HazardousMaterialsIdDot => "Hazardous Materials ID DOT",
722 Item::Endorsement => "Endorsement",
723 Item::AirForceRegulation714 => "Air Force Regulation 71-4",
724 Item::Breed => "Breed",
725 Item::ChemicalAbstractServiceCasRegistryNumber => {
726 "Chemical Abstract Service (CAS) registry number"
727 }
728 Item::EngineModelDesignation => "Engine model designation",
729 Item::InstitutionalMeatPurchaseSpecificationsImpsNumber => {
730 "Institutional Meat Purchase Specifications (IMPS) Number"
731 }
732 Item::PriceLookUpCodePlu => "Price Look-Up code (PLU)",
733 Item::InternationalMaritimeOrganizationImoCode => {
734 "International Maritime Organization (IMO) Code"
735 }
736 Item::BureauExplosives600ARail => "Bureau of Explosives 600-A (rail)",
737 Item::UnitedNationsDangerousGoodsList => "United Nations Dangerous Goods List",
738 Item::InternationalCodeBotanicalNomenclatureIcbn => {
739 "International Code of Botanical Nomenclature (ICBN)"
740 }
741 Item::InternationalCodeZoologicalNomenclatureIczn => {
742 "International Code of Zoological Nomenclature (ICZN)"
743 }
744 Item::InternationalCodeNomenclatureForCultivatedPlants => {
745 "International Code of Nomenclature for Cultivated Plants"
746 }
747 Item::DistributorSArticleIdentifier => "Distributor’s article identifier",
748 Item::NorwegianClassificationSystemEnva => "Norwegian Classification system ENVA",
749 Item::SupplierAssignedClassification => "Supplier assigned classification",
750 Item::MexicanClassificationSystemAmece => "Mexican classification system AMECE",
751 Item::GermanClassificationSystemCcg => "German classification system CCG",
752 Item::FinnishClassificationSystemEanfin => "Finnish classification system EANFIN",
753 Item::CanadianClassificationSystemIcc => "Canadian classification system ICC",
754 Item::FrenchClassificationSystemIfls5 => "French classification system IFLS5",
755 Item::StyleNumber => "Style number",
756 Item::DutchClassificationSystemCbl => "Dutch classification system CBL",
757 Item::JapaneseClassificationSystemJicfs => "Japanese classification system JICFS",
758 Item::EuropeanUnionDairySubsidyEligibilityClassification => {
759 "European Union dairy subsidy eligibility classification"
760 }
761 Item::Gs1SpainClassificationSystem => "GS1 Spain classification system",
762 Item::Gs1PolandClassificationSystem => "GS1 Poland classification system",
763 Item::FederalAgencyOnTechnicalRegulatingAndMetrology => {
764 "Federal Agency on Technical Regulating and Metrology of the"
765 }
766 Item::EfficientConsumerResponseEcrAustriaClassification => {
767 "Efficient Consumer Response (ECR) Austria classification"
768 }
769 Item::Gs1ItalyClassificationSystem => "GS1 Italy classification system",
770 Item::CpvCommonProcurementVocabulary => "CPV (Common Procurement Vocabulary)",
771 Item::IfdaInternationalFoodserviceDistributorsAssociation => {
772 "IFDA (International Foodservice Distributors Association)"
773 }
774 Item::AhfsAmericanHospitalFormularyServicePharmacologic => {
775 "AHFS (American Hospital Formulary Service) pharmacologic -"
776 }
777 Item::AtcAnatomicalTherapeuticChemicalClassificationSystem => {
778 "ATC (Anatomical Therapeutic Chemical) classification system"
779 }
780 Item::CladimedClassificationDesDispositifsMédicaux => {
781 "CLADIMED (Classification des Dispositifs Médicaux)"
782 }
783 Item::CmdrCanadianMedicalDeviceRegulationsClassification => {
784 "CMDR (Canadian Medical Device Regulations) classification"
785 }
786 Item::CndmClassificazioneNazionaleDeiDispositiviMedici => {
787 "CNDM (Classificazione Nazionale dei Dispositivi Medici)"
788 }
789 Item::UkDmDDictionaryMedicinesDevicesStandardCoding => {
790 "UK DM&D (Dictionary of Medicines & Devices) standard coding"
791 }
792 Item::EclSs => "eCl@ss",
793 Item::EdmaEuropeanDiagnosticManufacturersAssociation => {
794 "EDMA (European Diagnostic Manufacturers Association)"
795 }
796 Item::EgarEuropeanGenericArticleRegister => "EGAR (European Generic Article Register)",
797 Item::GmdnGlobalMedicalDevicesNomenclature => {
798 "GMDN (Global Medical Devices Nomenclature)"
799 }
800 Item::GpiGenericProductIdentifier => "GPI (Generic Product Identifier)",
801 Item::HcpcsHealthcareCommonProcedureCodingSystem => {
802 "HCPCS (Healthcare Common Procedure Coding System)"
803 }
804 Item::IcpsInternationalClassificationForPatientSafety => {
805 "ICPS (International Classification for Patient Safety)"
806 }
807 Item::MeddraMedicalDictionaryForRegulatoryActivities => {
808 "MedDRA (Medical Dictionary for Regulatory Activities)"
809 }
810 Item::MedicalColumbus => "Medical Columbus",
811 Item::NapcsNorthAmericanProductClassificationSystem => {
812 "NAPCS (North American Product Classification System)"
813 }
814 Item::NhsNationalHealthServicesEclass => "NHS (National Health Services) eClass",
815 Item::UsFdaFoodAndDrugAdministrationProductCode => {
816 "US FDA (Food and Drug Administration) Product Code"
817 }
818 Item::SnomedCtSystematizedNomenclatureMedicineClinical => {
819 "SNOMED CT (Systematized Nomenclature of Medicine-Clinical"
820 }
821 Item::UmdnsUniversalMedicalDeviceNomenclatureSystem => {
822 "UMDNS (Universal Medical Device Nomenclature System)"
823 }
824 Item::Gs1GlobalReturnableAssetIdentifierNonSerialised => {
825 "GS1 Global Returnable Asset Identifier, non-serialised"
826 }
827 Item::Imei => "IMEI",
828 Item::WasteTypeEmsa => "Waste Type (EMSA)",
829 Item::ShipsStoreClassificationType => "Ship's store classification type",
830 Item::EmergencyFireCode => "Emergency fire code",
831 Item::EmergencySpillageCode => "Emergency spillage code",
832 Item::ImdgPackingGroup => "IMDG packing group",
833 Item::MarpolCodeIbc => "MARPOL Code IBC",
834 Item::ImdgSubsidiaryRiskClass => "IMDG subsidiary risk class",
835 Item::TransportGroupNumber => "Transport group number",
836 Item::TaxonomicSerialNumber => "Taxonomic Serial Number",
837 Item::ImdgMainHazardClass => "IMDG main hazard class",
838 Item::EuCombinedNomenclature => "EU Combined Nomenclature",
839 Item::TherapeuticClassificationNumber => "Therapeutic classification number",
840 Item::EuropeanWasteCatalogue => "European Waste Catalogue",
841 Item::PriceGroupingCode => "Price grouping code",
842 Item::Unspsc => "UNSPSC",
843 Item::EuRohsDirective => "EU RoHS Directive",
844 Item::UltimateCustomersArticleNumber => "Ultimate customer's article number",
845 Item::UpcUniversalProductCode => "UPC (Universal product code)",
846 Item::VendorItemNumber => "Vendor item number",
847 Item::VendorsSellersPartNumber => "Vendor's (seller's) part number",
848 Item::VendorsSupplementalItemNumber => "Vendor's supplemental item number",
849 Item::VendorSpecificationNumber => "Vendor specification number",
850 Item::MutuallyDefined => "Mutually defined",
851 }
852 }
853}
854
855impl crate::FromCode for Item {
856 fn from_code(code: &str) -> Option<Self>
857 where
858 Self: Sized,
859 {
860 match code {
861 "AA" => Some(Item::ProductVersionNumber),
862 "AB" => Some(Item::Assembly),
863 "AC" => Some(Item::HibcHealthIndustryBarCode),
864 "AD" => Some(Item::ColdRollNumber),
865 "AE" => Some(Item::HotRollNumber),
866 "AF" => Some(Item::SlabNumber),
867 "AG" => Some(Item::SoftwareRevisionNumber),
868 "AH" => Some(Item::UpcUniversalProductCodeConsumerPackageCode155),
869 "AI" => Some(Item::UpcUniversalProductCodeConsumerPackageCode155_Dup),
870 "AJ" => Some(Item::SampleNumber),
871 "AK" => Some(Item::PackNumber),
872 "AL" => Some(Item::UpcUniversalProductCodeShippingContainerCode12),
873 "AM" => Some(Item::UpcUniversalProductCodeEanEuropeanArticleNumber),
874 "AN" => Some(Item::UpcUniversalProductCodeSuffix),
875 "AO" => Some(Item::StateLabelCode),
876 "AP" => Some(Item::HeatNumber),
877 "AQ" => Some(Item::CouponNumber),
878 "AR" => Some(Item::ResourceNumber),
879 "AS" => Some(Item::WorkTaskNumber),
880 "AT" => Some(Item::PriceLookUpNumber),
881 "AU" => Some(Item::NsnNorthAtlanticTreatyOrganizationStockNumber),
882 "AV" => Some(Item::RefinedProductCode),
883 "AW" => Some(Item::Exhibit),
884 "AX" => Some(Item::EndItem),
885 "AY" => Some(Item::FederalSupplyClassification),
886 "AZ" => Some(Item::EngineeringDataList),
887 "BA" => Some(Item::MilestoneEventNumber),
888 "BB" => Some(Item::LotNumber),
889 "BC" => Some(Item::NationalDrugCode442Format),
890 "BD" => Some(Item::NationalDrugCode532Format),
891 "BE" => Some(Item::NationalDrugCode541Format),
892 "BF" => Some(Item::NationalDrugCode542Format),
893 "BG" => Some(Item::NationalDrugCode),
894 "BH" => Some(Item::PartNumber),
895 "BI" => Some(Item::LocalStockNumberLsn),
896 "BJ" => Some(Item::NextHigherAssemblyNumber),
897 "BK" => Some(Item::DataCategory),
898 "BL" => Some(Item::ControlNumber),
899 "BM" => Some(Item::SpecialMaterialIdentificationCode),
900 "BN" => Some(Item::LocallyAssignedControlNumber),
901 "BO" => Some(Item::BuyersColour),
902 "BP" => Some(Item::BuyersPartNumber),
903 "BQ" => Some(Item::VariableMeasureProductCode),
904 "BR" => Some(Item::FinancialPhase),
905 "BS" => Some(Item::ContractBreakdown),
906 "BT" => Some(Item::TechnicalPhase),
907 "BU" => Some(Item::DyeLotNumber),
908 "BV" => Some(Item::DailyStatementActivities),
909 "BW" => Some(Item::PeriodicalStatementActivitiesWithinABilaterally),
910 "BX" => Some(Item::CalendarWeekStatementActivities),
911 "BY" => Some(Item::CalendarMonthStatementActivities),
912 "BZ" => Some(Item::OriginalEquipmentNumber),
913 "CC" => Some(Item::IndustryCommodityCode),
914 "CG" => Some(Item::CommodityGrouping),
915 "CL" => Some(Item::ColourNumber),
916 "CR" => Some(Item::ContractNumber),
917 "CV" => Some(Item::CustomsArticleNumber),
918 "DR" => Some(Item::DrawingRevisionNumber),
919 "DW" => Some(Item::Drawing),
920 "EC" => Some(Item::EngineeringChangeLevel),
921 "EF" => Some(Item::MaterialCode),
922 "EMD" => Some(Item::EmdnEuropeanMedicalDeviceNomenclature),
923 "EN" => Some(Item::InternationalArticleNumberingAssociationEan),
924 "FS" => Some(Item::FishSpecies),
925 "GB" => Some(Item::BuyersInternalProductGroupCode),
926 "GMN" => Some(Item::GlobalModelNumber),
927 "GN" => Some(Item::NationalProductGroupCode),
928 "GS" => Some(Item::GeneralSpecificationNumber),
929 "HS" => Some(Item::HarmonisedSystem),
930 "IB" => Some(Item::IsbnInternationalStandardBookNumber),
931 "IN" => Some(Item::BuyersItemNumber),
932 "IS" => Some(Item::IssnInternationalStandardSerialNumber),
933 "IT" => Some(Item::BuyersStyleNumber),
934 "IZ" => Some(Item::BuyersSizeCode),
935 "MA" => Some(Item::MachineNumber),
936 "MF" => Some(Item::ManufacturersProducersArticleNumber),
937 "MN" => Some(Item::ModelNumber),
938 "MP" => Some(Item::ProductServiceIdentificationNumber),
939 "NB" => Some(Item::BatchNumber),
940 "ON" => Some(Item::CustomerOrderNumber),
941 "PD" => Some(Item::PartNumberDescription),
942 "PL" => Some(Item::PurchasersOrderLineNumber),
943 "PO" => Some(Item::PurchaseOrderNumber),
944 "PV" => Some(Item::PromotionalVariantNumber),
945 "QS" => Some(Item::BuyersQualifierForSize),
946 "RC" => Some(Item::ReturnableContainerNumber),
947 "RN" => Some(Item::ReleaseNumber),
948 "RU" => Some(Item::RunNumber),
949 "RY" => Some(Item::RecordKeepingModelYear),
950 "SA" => Some(Item::SuppliersArticleNumber),
951 "SG" => Some(Item::StandardGroupProductsMixedAssortment),
952 "SK" => Some(Item::SkuStockKeepingUnit),
953 "SN" => Some(Item::SerialNumber),
954 "SRS" => Some(Item::RskNumber),
955 "SRT" => Some(Item::IflsInstitutFrancaisDuLibreService5DigitProduct),
956 "SRU" => Some(Item::IflsInstitutFrancaisDuLibreService9DigitProduct),
957 "SRV" => Some(Item::Gs1GlobalTradeItemNumber),
958 "SRW" => Some(Item::EdisEnergyDataIdentificationSystem),
959 "SRX" => Some(Item::SlaughterNumber),
960 "SRY" => Some(Item::OfficialAnimalNumber),
961 "SRZ" => Some(Item::HarmonizedTariffSchedule),
962 "SS" => Some(Item::SuppliersSupplierArticleNumber),
963 "SSA" => Some(Item::_46LevelDotCode),
964 "SSB" => Some(Item::AirlineTariff6d),
965 "SSC" => Some(Item::Title49CodeFederalRegulations),
966 "SSD" => Some(Item::InternationalCivilAviationAdministrationCode),
967 "SSE" => Some(Item::HazardousMaterialsIdDot),
968 "SSF" => Some(Item::Endorsement),
969 "SSG" => Some(Item::AirForceRegulation714),
970 "SSH" => Some(Item::Breed),
971 "SSI" => Some(Item::ChemicalAbstractServiceCasRegistryNumber),
972 "SSJ" => Some(Item::EngineModelDesignation),
973 "SSK" => Some(Item::InstitutionalMeatPurchaseSpecificationsImpsNumber),
974 "SSL" => Some(Item::PriceLookUpCodePlu),
975 "SSM" => Some(Item::InternationalMaritimeOrganizationImoCode),
976 "SSN" => Some(Item::BureauExplosives600ARail),
977 "SSO" => Some(Item::UnitedNationsDangerousGoodsList),
978 "SSP" => Some(Item::InternationalCodeBotanicalNomenclatureIcbn),
979 "SSQ" => Some(Item::InternationalCodeZoologicalNomenclatureIczn),
980 "SSR" => Some(Item::InternationalCodeNomenclatureForCultivatedPlants),
981 "SSS" => Some(Item::DistributorSArticleIdentifier),
982 "SST" => Some(Item::NorwegianClassificationSystemEnva),
983 "SSU" => Some(Item::SupplierAssignedClassification),
984 "SSV" => Some(Item::MexicanClassificationSystemAmece),
985 "SSW" => Some(Item::GermanClassificationSystemCcg),
986 "SSX" => Some(Item::FinnishClassificationSystemEanfin),
987 "SSY" => Some(Item::CanadianClassificationSystemIcc),
988 "SSZ" => Some(Item::FrenchClassificationSystemIfls5),
989 "ST" => Some(Item::StyleNumber),
990 "STA" => Some(Item::DutchClassificationSystemCbl),
991 "STB" => Some(Item::JapaneseClassificationSystemJicfs),
992 "STC" => Some(Item::EuropeanUnionDairySubsidyEligibilityClassification),
993 "STD" => Some(Item::Gs1SpainClassificationSystem),
994 "STE" => Some(Item::Gs1PolandClassificationSystem),
995 "STF" => Some(Item::FederalAgencyOnTechnicalRegulatingAndMetrology),
996 "STG" => Some(Item::EfficientConsumerResponseEcrAustriaClassification),
997 "STH" => Some(Item::Gs1ItalyClassificationSystem),
998 "STI" => Some(Item::CpvCommonProcurementVocabulary),
999 "STJ" => Some(Item::IfdaInternationalFoodserviceDistributorsAssociation),
1000 "STK" => Some(Item::AhfsAmericanHospitalFormularyServicePharmacologic),
1001 "STL" => Some(Item::AtcAnatomicalTherapeuticChemicalClassificationSystem),
1002 "STM" => Some(Item::CladimedClassificationDesDispositifsMédicaux),
1003 "STN" => Some(Item::CmdrCanadianMedicalDeviceRegulationsClassification),
1004 "STO" => Some(Item::CndmClassificazioneNazionaleDeiDispositiviMedici),
1005 "STP" => Some(Item::UkDmDDictionaryMedicinesDevicesStandardCoding),
1006 "STQ" => Some(Item::EclSs),
1007 "STR" => Some(Item::EdmaEuropeanDiagnosticManufacturersAssociation),
1008 "STS" => Some(Item::EgarEuropeanGenericArticleRegister),
1009 "STT" => Some(Item::GmdnGlobalMedicalDevicesNomenclature),
1010 "STU" => Some(Item::GpiGenericProductIdentifier),
1011 "STV" => Some(Item::HcpcsHealthcareCommonProcedureCodingSystem),
1012 "STW" => Some(Item::IcpsInternationalClassificationForPatientSafety),
1013 "STX" => Some(Item::MeddraMedicalDictionaryForRegulatoryActivities),
1014 "STY" => Some(Item::MedicalColumbus),
1015 "STZ" => Some(Item::NapcsNorthAmericanProductClassificationSystem),
1016 "SUA" => Some(Item::NhsNationalHealthServicesEclass),
1017 "SUB" => Some(Item::UsFdaFoodAndDrugAdministrationProductCode),
1018 "SUC" => Some(Item::SnomedCtSystematizedNomenclatureMedicineClinical),
1019 "SUD" => Some(Item::UmdnsUniversalMedicalDeviceNomenclatureSystem),
1020 "SUE" => Some(Item::Gs1GlobalReturnableAssetIdentifierNonSerialised),
1021 "SUF" => Some(Item::Imei),
1022 "SUG" => Some(Item::WasteTypeEmsa),
1023 "SUH" => Some(Item::ShipsStoreClassificationType),
1024 "SUI" => Some(Item::EmergencyFireCode),
1025 "SUJ" => Some(Item::EmergencySpillageCode),
1026 "SUK" => Some(Item::ImdgPackingGroup),
1027 "SUL" => Some(Item::MarpolCodeIbc),
1028 "SUM" => Some(Item::ImdgSubsidiaryRiskClass),
1029 "TG" => Some(Item::TransportGroupNumber),
1030 "TSN" => Some(Item::TaxonomicSerialNumber),
1031 "TSO" => Some(Item::ImdgMainHazardClass),
1032 "TSP" => Some(Item::EuCombinedNomenclature),
1033 "TSQ" => Some(Item::TherapeuticClassificationNumber),
1034 "TSR" => Some(Item::EuropeanWasteCatalogue),
1035 "TSS" => Some(Item::PriceGroupingCode),
1036 "TST" => Some(Item::Unspsc),
1037 "TSU" => Some(Item::EuRohsDirective),
1038 "UA" => Some(Item::UltimateCustomersArticleNumber),
1039 "UP" => Some(Item::UpcUniversalProductCode),
1040 "VN" => Some(Item::VendorItemNumber),
1041 "VP" => Some(Item::VendorsSellersPartNumber),
1042 "VS" => Some(Item::VendorsSupplementalItemNumber),
1043 "VX" => Some(Item::VendorSpecificationNumber),
1044 "ZZZ" => Some(Item::MutuallyDefined),
1045 _ => None,
1046 }
1047 }
1048}