edifact_types/d95b/types.rs
1use serde::{Deserialize, Serialize};
2use strum_macros::{Display, EnumString};
3
4/// Syntax identifier
5///
6/// Coded identification of the agency controlling a syntax and syntax level used in an interchange.
7#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq, Default)]
8pub enum _0001 {
9 /// UN/ECE level A
10 /// As defined in the basic code table of ISO 646 with the exceptions of lower case letters, alternative graphic character allocations and national or application-oriented graphic character allocations.
11 UNOA,
12 /// UN/ECE level B
13 /// As defined in the basic code table of ISO 646 with the exceptions of alternative graphic character allocations and national or application-oriented graphic character allocations.
14 UNOB,
15 /// UN/ECE level C
16 /// As defined in ISO 8859-1 : Information processing - Part 1: Latin alphabet No. 1.
17 #[default]
18 UNOC,
19 /// UN/ECE level D
20 /// As defined in ISO 8859-2 : Information processing - Part 2: Latin alphabet No. 2.
21 UNOD,
22 /// UN/ECE level E
23 /// As defined in ISO 8859-5 : Information processing - Part 5: Latin/Cyrillic alphabet.
24 UNOE,
25 /// UN/ECE level F
26 /// As defined in ISO 8859-7 : Information processing - Part 7: Latin/Greek alphabet.
27 UNOF,
28}
29
30/// Syntax version number
31///
32/// Version number of the syntax identified in the syntax identifier (0001)
33#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq, Default)]
34pub enum _0002 {
35 /// Version 1
36 /// ISO 9735:1988.
37 #[strum(serialize = "1")]
38 _1,
39 /// Version 2
40 /// ISO 9735:1990.
41 #[strum(serialize = "2")]
42 _2,
43 /// Version 3
44 /// ISO 9735 Amendment 1:1992.
45 #[default]
46 #[strum(serialize = "3")]
47 _3,
48}
49
50/// Partner identification code qualifier
51///
52/// Qualifier referring to the source of codes for the identifiers of interchanging partners.
53#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
54pub enum _0007 {
55 /// DUNS (Dun & Bradstreet)
56 ///
57 /// Self explanatory.
58 #[strum(serialize = "1")]
59 _1,
60 /// IATA (International Air Transport Association)
61 ///
62 /// Self explanatory.
63 #[strum(serialize = "4")]
64 _4,
65 /// INSEE/SIRET
66 ///
67 /// Self explanatory.
68 #[strum(serialize = "5")]
69 _5,
70 /// UCC Communications ID (Uniform Code Council Communications Identifier)
71 ///
72 /// The Uniform Code Council Communications Identifier is a ten digit code used to uniquely identify physical and logical locations.
73 #[strum(serialize = "8")]
74 _8,
75 /// DUNS with 4 digit suffix
76 ///
77 /// Self explanatory.
78 #[strum(serialize = "9")]
79 _9,
80 /// Telephone number
81 ///
82 /// Self explanatory.
83 #[strum(serialize = "12")]
84 _12,
85 /// EAN (European Article Numbering Association)
86 ///
87 /// Self explanatory.
88 #[strum(serialize = "14")]
89 _14,
90 /// AIAG (Automotive Industry Action Group)
91 ///
92 /// Self explanatory.
93 #[strum(serialize = "18")]
94 _18,
95 /// INSEE/SIREN
96 ///
97 /// Self explanatory.
98 #[strum(serialize = "22")]
99 _22,
100 /// ISO 6523: Organization identification
101 ///
102 /// Self explanatory.
103 #[strum(serialize = "30")]
104 _30,
105 /// DIN (Deutsches Institut fuer Normung)
106 ///
107 /// German standardization institute.
108 #[strum(serialize = "31")]
109 _31,
110 /// BfA (Bundesversicherungsanstalt fuer Angestellte)
111 ///
112 /// German social security association.
113 #[strum(serialize = "33")]
114 _33,
115 /// National Statistical Agency
116 ///
117 /// Self explanatory.
118 #[strum(serialize = "34")]
119 _34,
120 /// General Electric Information Services
121 ///
122 /// Self explanatory.
123 #[strum(serialize = "51")]
124 _51,
125 /// IBM Network Services
126 ///
127 /// Self explanatory.
128 #[strum(serialize = "52")]
129 _52,
130 /// Datenzentrale des Einzelhandels, Germany
131 ///
132 /// German data centre for retail trade.
133 #[strum(serialize = "53")]
134 _53,
135 /// Bundesverband der Deutschen Baustoffhaendler, Germany
136 ///
137 /// German building material trade association.
138 #[strum(serialize = "54")]
139 _54,
140 /// Bank identifier code
141 ///
142 /// Self explanatory.
143 #[strum(serialize = "55")]
144 _55,
145 /// Statens Teleforvaltning
146 ///
147 /// Norwegian telecommunications regulatory authority (NTRA).
148 #[strum(serialize = "56")]
149 _56,
150 /// KTNet
151 ///
152 /// Korea Trade Network Services.
153 #[strum(serialize = "57")]
154 _57,
155 /// UPU (Universal Postal Union)
156 ///
157 /// Self explanatory.
158 #[strum(serialize = "58")]
159 _58,
160 /// ODETTE
161 ///
162 /// Organization for Data Exchange through Tele-Transmission in Europe (European automotive industry project).
163 #[strum(serialize = "59")]
164 _59,
165 /// SCAC (Standard Carrier Alpha Code)
166 ///
167 /// Directory of standard multimodal carriers and tariff agent codes. The SCAC lists and codes transportation companies.
168 #[strum(serialize = "61")]
169 _61,
170 /// ECA (Electronic Commerce Australia)
171 ///
172 /// Australian association for electronic commerce.
173 #[strum(serialize = "63")]
174 _63,
175 /// TELEBOX 400 (Deutsche Bundespost)
176 ///
177 /// German post office.
178 #[strum(serialize = "65")]
179 _65,
180 /// NHS (National Health Service)
181 ///
182 /// United Kingdom National Health Service.
183 #[strum(serialize = "80")]
184 _80,
185 /// Athens Chamber of Commerce
186 ///
187 /// Greek Chamber of Commerce.
188 #[strum(serialize = "84")]
189 _84,
190 /// Swiss Chamber of Commerce
191 ///
192 /// Swiss Chamber of Commerce.
193 #[strum(serialize = "85")]
194 _85,
195 /// US Council for International Business
196 ///
197 /// United States Council for International Business.
198 #[strum(serialize = "86")]
199 _86,
200 /// National Federation of Chambers of Commerce and Industry
201 ///
202 /// Belguim National Federation of Chambers of Commerce andIndustry.
203 #[strum(serialize = "87")]
204 _87,
205 /// Assigned by seller or seller's agent
206 ///
207 /// Self explanatory.
208 #[strum(serialize = "91")]
209 _91,
210 /// Assigned by buyer or buyer's agent
211 ///
212 /// Self explanatory.
213 #[strum(serialize = "92")]
214 _92,
215 /// Mutually defined
216 ///
217 /// Self explanatory.
218 #[strum(serialize = "ZZZ")]
219 ZZZ,
220}
221
222/// Recipient's reference/password qualifier
223///
224/// Qualifier for the recipient's reference or password.
225#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
226pub enum _0025 {
227 /// Reference
228 /// Self explanatory.
229 AA,
230 /// Password
231 /// Self explanatory.
232 BB,
233}
234
235/// Processing priority code
236///
237/// Code determined by the sender requesting processing priority for the interchange.
238#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
239pub enum _0029 {
240 /// Highest priority
241 /// Self explanatory.
242 A,
243}
244
245/// Acknowledgement request
246///
247/// Code determined by the sender for acknowledgement of the interchange.
248#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
249pub enum _0031 {
250 /// Requested
251 /// Acknowledgement is requested.
252 #[strum(serialize = "1")]
253 _1,
254}
255
256/// Test indicator
257///
258/// Indication that the interchange is a test.
259#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
260pub enum _0035 {
261 /// Interchange is a test
262 /// Self explanatory.
263 #[strum(serialize = "1")]
264 _1,
265}
266
267/// 1225 Message function code
268#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq, EnumString, Display)]
269#[strum(serialize_all = "camelCase")]
270pub enum _1225 {
271 /// Cancellation
272 ///
273 /// Message cancelling a previous transmission for a given
274 /// transaction.
275 #[serde(rename = "1")]
276 _1,
277 /// Addition
278 #[serde(rename = "2")]
279 _2,
280 /// Deletion
281 #[serde(rename = "3")]
282 _3,
283 /// Change
284 #[serde(rename = "4")]
285 _4,
286 /// Replace
287 #[serde(rename = "5")]
288 _5,
289 #[serde(rename = "6")]
290 _6,
291 #[serde(rename = "7")]
292 _7,
293 #[serde(rename = "8")]
294 _8,
295 #[serde(rename = "9")]
296 _9,
297 #[serde(rename = "10")]
298 _10,
299 #[serde(rename = "11")]
300 _11,
301 #[serde(rename = "12")]
302 _12,
303 #[serde(rename = "13")]
304 _13,
305 #[serde(rename = "14")]
306 _14,
307 #[serde(rename = "15")]
308 _15,
309 #[serde(rename = "16")]
310 _16,
311 #[serde(rename = "17")]
312 _17,
313 #[serde(rename = "18")]
314 _18,
315 #[serde(rename = "19")]
316 _19,
317 #[serde(rename = "20")]
318 _20,
319 #[serde(rename = "21")]
320 _21,
321 #[serde(rename = "22")]
322 _22,
323 #[serde(rename = "23")]
324 _23,
325 #[serde(rename = "24")]
326 _24,
327 #[serde(rename = "25")]
328 _25,
329 #[serde(rename = "26")]
330 _26,
331 #[serde(rename = "27")]
332 _27,
333 #[serde(rename = "28")]
334 _28,
335 #[serde(rename = "29")]
336 _29,
337 #[serde(rename = "30")]
338 _30,
339 #[serde(rename = "31")]
340 _31,
341 #[serde(rename = "32")]
342 _32,
343 #[serde(rename = "33")]
344 _33,
345 #[serde(rename = "34")]
346 _34,
347 #[serde(rename = "35")]
348 _35,
349 #[serde(rename = "36")]
350 _36,
351 #[serde(rename = "37")]
352 _37,
353 #[serde(rename = "38")]
354 _38,
355 #[serde(rename = "39")]
356 _39,
357 #[serde(rename = "40")]
358 _40,
359 #[serde(rename = "41")]
360 _41,
361 #[serde(rename = "42")]
362 _42,
363 #[serde(rename = "43")]
364 _43,
365 #[serde(rename = "44")]
366 _44,
367 #[serde(rename = "45")]
368 _45,
369 #[serde(rename = "46")]
370 _46,
371 #[serde(rename = "47")]
372 _47,
373 #[serde(rename = "48")]
374 _48,
375 #[serde(rename = "49")]
376 _49,
377 #[serde(rename = "50")]
378 _50,
379 #[serde(rename = "51")]
380 _51,
381 #[serde(rename = "52")]
382 _52,
383 /// 53 Test
384 ///
385 /// Code indicating the message is to be considered as a
386 /// test.
387 #[serde(rename = "53")]
388 _53,
389}
390
391/// 2379 Date or time or period format code
392#[derive(Debug, Serialize, Deserialize, Clone)]
393pub enum _2379 {
394 /// DDMMYY
395 ///
396 /// Calendar date: D = Day; M = Month; Y = Year.
397 #[serde(rename = "2")]
398 _2,
399 /// MMDDYY
400 ///
401 /// Calendar date: M = Month; D = Day; Y = Year.
402 #[serde(rename = "3")]
403 _3,
404 /// DDMMCCYY
405 ///
406 /// Calendar date C=Century; Y=Year; M=Month; D=Day.
407 _4,
408 /// DDMMCCYYHHMM
409 ///
410 /// Calendar date and time: C=Century; Y=Year; M=Month;
411 /// D=Day; H=Hour; M=Minute.
412 _5,
413 /// YYMMDD
414 ///
415 /// Calendar date: Y = Year; M = Month; D = Day.
416 _101,
417 /// CCYYMMDD
418 ///
419 /// Calendar date: C = Century ; Y = Year ; M = Month ; D =
420 /// Day.
421 _102,
422 /// YYWWD
423 ///
424 /// Calendar week day: Y = Year ; W = Week ; D = Day Week
425 /// number 01 is always first week of January Day number 1
426 /// is always Monday.
427 _103,
428 /// YYDDD
429 ///
430 /// Calendar day: Y = Year ; D = Day January the first = Day
431 /// 001 Always start numbering the days of the year from
432 /// January 1st through December 31st.
433 _105,
434 /// MMDD
435 ///
436 /// Day of a month: M = Month; D = Day.
437 #[serde(rename = "106")]
438 _106,
439 /// DDD
440 ///
441 /// Day's number within a specific year: D = Day.
442 #[serde(rename = "107")]
443 _107,
444 /// WW
445 ///
446 /// Week's number within a specific year: W = Week.
447 #[serde(rename = "108")]
448 _108,
449 /// MM
450 ///
451 /// Month's number within a specific year: M = Month.
452 #[serde(rename = "109")]
453 _109,
454 /// DD
455 ///
456 /// Day's number within is a specific month: D = Day.
457 #[serde(rename = "110")]
458 _110,
459 /// YYMMDDHHMM
460 ///
461 /// Calendar date including time without seconds: Y = Year;
462 /// M = Month; D = Day; H = Hour; M = Minute.
463 #[serde(rename = "201")]
464 _201,
465 /// YYMMDDHHMMSS
466 ///
467 /// Calendar date including time with seconds: Y = Year; M =
468 /// Month; D = Day; H = Hour; m = Minutes = Seconds.
469 #[serde(rename = "202")]
470 _202,
471 /// CCYYMMDDHHMM
472 ///
473 /// Calendar date including time with minutes: C=Century;
474 /// Y=Year; M=Month; D=Day; H=Hour; M=Minutes.
475 #[serde(rename = "203")]
476 _203,
477 /// CCYYMMDDHHMMSS
478 ///
479 /// Calendar date including time with seconds:
480 /// C=Century;Y=Year;
481 /// M=Month;D=Day;H=Hour;M=Minute;S=Second.
482 _204,
483 /// CCYYMMDDHHMMZHHMM
484 ///
485 /// Calendar date including time and time zone expressed in
486 /// hours and minutes.
487 /// ZHHMM = time zone given as offset from Coordinated
488 /// Universal Time (UTC).
489 _205,
490
491 /// YYMMDDHHMMZZZ
492 ///
493 /// See 201 + Z = Time zone.
494 _301,
495 /// YYMMDDHHMMSSZZZ
496 ///
497 /// See 202 + Z = Time zone.
498 _302,
499 /// CCYYMMDDHHMMZZZ
500 ///
501 /// See 203 plus Z=Time zone.
502 _303,
503
504 /// CCYYMMDDHHMMSSZZZ
505 ///
506 /// See 204 plus Z=Time zone.
507 _304,
508 /// MMDDHHMM
509 ///
510 /// Month, day, hours, minutes; M = Month; D = Day; H =
511 /// Hour; M = Minute.
512 _305,
513 /// DDHHMM
514 ///
515 /// Day, hours, minutes; D = Day; H = Hour; M = Minute.
516 _306,
517 /// HHMM
518 ///
519 /// Time without seconds: H = Hour; m = Minute.
520 _401,
521 /// HHMMSS
522 ///
523 /// Time with seconds: H = Hour; m = Minute; s = Seconds.
524 _402,
525 /// HHMMSSZZZ
526 ///
527 /// See 402 plus Z=Time zone.
528 _404,
529 /// MMMMSS
530 ///
531 /// Time without hours: m=minutes, s=seconds.
532 _405,
533 /// ZHHMM
534 ///
535 /// Offset from Coordinated Universal Time (UTC) where Z is
536 /// plus (+) or minus (-).
537 _406,
538 /// HHMMHHMM
539 ///
540 /// Time span without seconds: H = Hour; m = Minute;.
541 _501,
542 /// HHMMSS-HHMMSS
543 ///
544 /// Format of period to be given without hyphen.
545 _502,
546 /// HHMMSSZZZ-HHMMSSZZZ
547 ///
548 /// Format of period to be given without hyphen.
549 _503,
550 /// CC
551 /// Century.
552 _600,
553 /// YY
554 /// Calendar year: Y = Year.
555 _601,
556 /// CCYY
557 /// Calendar year including century: C = Century; Y = Year.
558 _602,
559 /// YYS
560 /// Semester in a calendar year: Y = Year; S = Semester.
561 _603,
562 /// CCYYS
563 ///
564 /// Semester in a calendar year: C = Century; Y = Year; S =
565 /// Semester.
566 _604,
567 /// CCYYQ
568 ///
569 /// Quarter in a calendar year: C = Century; Y = Year; Q =
570 /// Quarter.
571 _608,
572 /// YYMM
573 ///
574 /// Month within a calendar year: Y = Year; M = Month.
575 _609,
576 /// CCYYMM
577 ///
578 /// Month within a calendar year: CC = Century; Y = Year; M
579 /// = Month.
580 _610,
581
582 /// YYMMA
583 ///
584 /// Format of period to be given without hyphen (A = ten
585 /// days period).
586 _613,
587
588 /// CCYYMMA
589 ///
590 /// Format of period to be given without hyphen (A = ten
591 /// days period).
592 _614,
593
594 /// YYWW
595 /// Week within a calendar year: Y = Year; W = Week 1st week
596 /// of January = week 01.
597 _615,
598 /// CCYYWW
599 ///
600 /// Week within a calendar year: CC = Century; Y = Year; W =
601 /// Week (1st week of January = week 01).
602 _616,
603 /// YY-YY
604 ///
605 /// Format of period to be given in actual message without
606 /// hyphen.
607 _701,
608 /// CCYY-CCYY
609 ///
610 /// Format of period to be given in actual message without
611 /// hyphen.
612 _702,
613 /// YYS-YYS
614 ///
615 /// Format of period to be given without hyphen.
616 _703,
617 /// CCYYS-CCYYS
618 ///
619 /// Format of period to be given in actual message without
620 /// hyphen.
621 _704,
622 /// YYPYYP
623 ///
624 /// Format of period to be given without hyphen (P = period
625 /// of 4 months).
626 _705,
627 /// CCYYP-CCYYP
628 ///
629 /// Format of period to be given without hyphen (P = period
630 /// of 4 months).
631 _706,
632 /// YYQ-YYQ
633 ///
634 /// Format of period to be given without hyphen.
635 _707,
636 /// CCYYQ-CCYYQ
637 ///
638 /// Format of period to be given in actual message without
639 /// hyphen.
640 _708,
641 /// YYMM-YYMM
642 ///
643 /// Format of period to be given in actual message without
644 /// hyphen.
645 _709,
646 /// CCYYMM-CCYYMM
647 ///
648 /// Format of period to be given in actual message without
649 /// hyphen.
650 #[serde(rename = "710")]
651 _710,
652 /// CCYYMMDD-CCYYMMDD
653 ///
654 /// Format of period to be given in actual message without
655 /// hyphen.
656 _711,
657 /// YYMMDDHHMM-YYMMDDHHMM
658 ///
659 /// Format of period to be given in actual message without
660 /// hyphen.
661 _713,
662 /// YYWW-YYWW
663 ///
664 /// Format of period to be given in actual message without
665 /// hyphen.
666 _715,
667 /// CCYYWW-CCYYWW
668 ///
669 /// Format of period to be given without hyphen.
670 _716,
671 /// YYMMDD-YYMMDD
672 ///
673 /// Format of period to be given in actual message without
674 /// hyphen.
675 _717,
676 /// CCYYMMDD-CCYYMMDD
677 ///
678 /// Format of period to be given without hyphen.
679 _718,
680 /// CCYYMMDDHHMM-CCYYMMDDHHMM
681 ///
682 /// A period of time which includes the century, year,
683 /// month, day, hour and minute. Format of period to be
684 /// given in actual message without hyphen.
685 _719,
686 /// DHHMM-DHHMM
687 ///
688 /// Format of period to be given without hyphen (D=day of
689 /// the week, 1=Monday; 2=Tuesday; ... 7=Sunday).
690 _720,
691 /// Year
692 ///
693 /// To indicate a quantity of years.
694 _901,
695 /// Month
696 ///
697 /// To indicate a quantity of months.
698 _902,
699 /// Week
700 ///
701 /// To indicate a quantity of weeks.
702 _903,
703 /// Day
704 ///
705 /// To indicate a quantity of days.
706 _904,
707 /// Hour
708 ///
709 /// To indicate a quantity of hours.
710 _905,
711 /// Minute
712 ///
713 /// To indicate a quantity of minutes.
714 _906,
715 /// Second
716 ///
717 /// To indicate a quantity of seconds.
718 #[serde(rename = "807")]
719 _807,
720 /// Semester
721 ///
722 /// To indicate a quantity of semesters (six months).
723 _808,
724 /// Four months period
725 ///
726 /// To indicate a quantity of four months periods.
727 #[serde(rename = "809")]
728 _809,
729 /// Trimester
730 ///
731 /// To indicate a quantity of trimesters (three months).
732 _810,
733 /// Half month
734 ///
735 /// To indicate a quantity of half months.
736 #[serde(rename = "811")]
737 _811,
738 /// Ten days
739 ///
740 /// To indicate a quantity of ten days periods.
741 #[serde(rename = "812")]
742 _812,
743 /// Day of the week
744 ///
745 /// Numeric representation of the day (Monday = 1).
746 #[serde(rename = "813")]
747 _813,
748 /// Working days
749 ///
750 /// Number of working days.
751 #[serde(rename = "814")]
752 _814,
753}
754
755/// 4343 Response type code
756#[derive(Debug, Serialize, Deserialize, PartialEq, Eq, Clone, EnumString, Display)]
757pub enum _4343 {
758 AA,
759 AB,
760 AC,
761 AD,
762 AE,
763 AF,
764 AG,
765 AH,
766 AI,
767 AJ,
768 AP,
769 AQ,
770 AR,
771 AS,
772 CA,
773 CO,
774 NA,
775 RE,
776 UR,
777 US,
778}