edi4r-tdid 0.6.3.1
Sign up to get free protection for your applications and to get access to all the features.
- data/AuthorCopyright +10 -0
- data/COPYING +56 -0
- data/ChangeLog +43 -0
- data/FileDescription +278 -0
- data/LICENAGR.UNTDID +58 -0
- data/MSG_ISSUES +46 -0
- data/README +48 -0
- data/TO-DO +27 -0
- data/VERSION +1 -0
- data/data/edifact/untdid/EDCD.1901.csv +82 -0
- data/data/edifact/untdid/EDCD.1902.csv +82 -0
- data/data/edifact/untdid/EDCD.1911.csv +104 -0
- data/data/edifact/untdid/EDCD.1921.csv +121 -0
- data/data/edifact/untdid/EDCD.2932.csv +102 -0
- data/data/edifact/untdid/EDCD.d00a.csv +200 -0
- data/data/edifact/untdid/EDCD.d00b.csv +200 -0
- data/data/edifact/untdid/EDCD.d01a.csv +200 -0
- data/data/edifact/untdid/EDCD.d01b.csv +200 -0
- data/data/edifact/untdid/EDCD.d01c.csv +200 -0
- data/data/edifact/untdid/EDCD.d02a.csv +200 -0
- data/data/edifact/untdid/EDCD.d02b.csv +198 -0
- data/data/edifact/untdid/EDCD.d03a.csv +198 -0
- data/data/edifact/untdid/EDCD.d03b.csv +198 -0
- data/data/edifact/untdid/EDCD.d04a.csv +198 -0
- data/data/edifact/untdid/EDCD.d04b.csv +198 -0
- data/data/edifact/untdid/EDCD.d05a.csv +198 -0
- data/data/edifact/untdid/EDCD.d05b.csv +197 -0
- data/data/edifact/untdid/EDCD.d93a.csv +121 -0
- data/data/edifact/untdid/EDCD.d94a.csv +124 -0
- data/data/edifact/untdid/EDCD.d94b.csv +125 -0
- data/data/edifact/untdid/EDCD.d95a.csv +145 -0
- data/data/edifact/untdid/EDCD.d95b.csv +160 -0
- data/data/edifact/untdid/EDCD.d96a.csv +161 -0
- data/data/edifact/untdid/EDCD.d96b.csv +174 -0
- data/data/edifact/untdid/EDCD.d97a.csv +174 -0
- data/data/edifact/untdid/EDCD.d97b.csv +176 -0
- data/data/edifact/untdid/EDCD.d98a.csv +179 -0
- data/data/edifact/untdid/EDCD.d98b.csv +186 -0
- data/data/edifact/untdid/EDCD.d99a.csv +187 -0
- data/data/edifact/untdid/EDCD.d99b.csv +194 -0
- data/data/edifact/untdid/EDCD.s93a.csv +121 -0
- data/data/edifact/untdid/EDED.1901.csv +220 -0
- data/data/edifact/untdid/EDED.1902.csv +220 -0
- data/data/edifact/untdid/EDED.1911.csv +299 -0
- data/data/edifact/untdid/EDED.1921.csv +344 -0
- data/data/edifact/untdid/EDED.2932.csv +291 -0
- data/data/edifact/untdid/EDED.d00a.csv +640 -0
- data/data/edifact/untdid/EDED.d00b.csv +644 -0
- data/data/edifact/untdid/EDED.d01a.csv +644 -0
- data/data/edifact/untdid/EDED.d01b.csv +641 -0
- data/data/edifact/untdid/EDED.d01c.csv +643 -0
- data/data/edifact/untdid/EDED.d02a.csv +643 -0
- data/data/edifact/untdid/EDED.d02b.csv +643 -0
- data/data/edifact/untdid/EDED.d03a.csv +648 -0
- data/data/edifact/untdid/EDED.d03b.csv +648 -0
- data/data/edifact/untdid/EDED.d04a.csv +650 -0
- data/data/edifact/untdid/EDED.d04b.csv +650 -0
- data/data/edifact/untdid/EDED.d05a.csv +650 -0
- data/data/edifact/untdid/EDED.d05b.csv +649 -0
- data/data/edifact/untdid/EDED.d93a.csv +344 -0
- data/data/edifact/untdid/EDED.d94a.csv +356 -0
- data/data/edifact/untdid/EDED.d94b.csv +362 -0
- data/data/edifact/untdid/EDED.d95a.csv +405 -0
- data/data/edifact/untdid/EDED.d95b.csv +459 -0
- data/data/edifact/untdid/EDED.d96a.csv +462 -0
- data/data/edifact/untdid/EDED.d96b.csv +496 -0
- data/data/edifact/untdid/EDED.d97a.csv +535 -0
- data/data/edifact/untdid/EDED.d97b.csv +547 -0
- data/data/edifact/untdid/EDED.d98a.csv +553 -0
- data/data/edifact/untdid/EDED.d98b.csv +582 -0
- data/data/edifact/untdid/EDED.d99a.csv +593 -0
- data/data/edifact/untdid/EDED.d99b.csv +622 -0
- data/data/edifact/untdid/EDED.s93a.csv +344 -0
- data/data/edifact/untdid/EDMD.1901.csv +276 -0
- data/data/edifact/untdid/EDMD.1902.csv +276 -0
- data/data/edifact/untdid/EDMD.1911.csv +905 -0
- data/data/edifact/untdid/EDMD.1921.csv +1239 -0
- data/data/edifact/untdid/EDMD.2932.csv +626 -0
- data/data/edifact/untdid/EDMD.d00a.csv +3259 -0
- data/data/edifact/untdid/EDMD.d00b.csv +3357 -0
- data/data/edifact/untdid/EDMD.d01a.csv +3417 -0
- data/data/edifact/untdid/EDMD.d01b.csv +3419 -0
- data/data/edifact/untdid/EDMD.d01c.csv +3428 -0
- data/data/edifact/untdid/EDMD.d02a.csv +3428 -0
- data/data/edifact/untdid/EDMD.d02b.csv +3429 -0
- data/data/edifact/untdid/EDMD.d03a.csv +3420 -0
- data/data/edifact/untdid/EDMD.d03b.csv +3421 -0
- data/data/edifact/untdid/EDMD.d04a.csv +3423 -0
- data/data/edifact/untdid/EDMD.d04b.csv +3423 -0
- data/data/edifact/untdid/EDMD.d05a.csv +3446 -0
- data/data/edifact/untdid/EDMD.d05b.csv +3447 -0
- data/data/edifact/untdid/EDMD.d93a.csv +1302 -0
- data/data/edifact/untdid/EDMD.d94a.csv +1419 -0
- data/data/edifact/untdid/EDMD.d94b.csv +1511 -0
- data/data/edifact/untdid/EDMD.d95a.csv +1752 -0
- data/data/edifact/untdid/EDMD.d95b.csv +1956 -0
- data/data/edifact/untdid/EDMD.d96a.csv +2144 -0
- data/data/edifact/untdid/EDMD.d96b.csv +2342 -0
- data/data/edifact/untdid/EDMD.d97a.csv +2417 -0
- data/data/edifact/untdid/EDMD.d97b.csv +2565 -0
- data/data/edifact/untdid/EDMD.d98a.csv +2671 -0
- data/data/edifact/untdid/EDMD.d98b.csv +2803 -0
- data/data/edifact/untdid/EDMD.d99a.csv +2896 -0
- data/data/edifact/untdid/EDMD.d99b.csv +3150 -0
- data/data/edifact/untdid/EDMD.s93a.csv +1054 -0
- data/data/edifact/untdid/EDSD.1901.csv +59 -0
- data/data/edifact/untdid/EDSD.1902.csv +59 -0
- data/data/edifact/untdid/EDSD.1911.csv +78 -0
- data/data/edifact/untdid/EDSD.1921.csv +89 -0
- data/data/edifact/untdid/EDSD.2932.csv +75 -0
- data/data/edifact/untdid/EDSD.d00a.csv +157 -0
- data/data/edifact/untdid/EDSD.d00b.csv +158 -0
- data/data/edifact/untdid/EDSD.d01a.csv +158 -0
- data/data/edifact/untdid/EDSD.d01b.csv +158 -0
- data/data/edifact/untdid/EDSD.d01c.csv +158 -0
- data/data/edifact/untdid/EDSD.d02a.csv +158 -0
- data/data/edifact/untdid/EDSD.d02b.csv +155 -0
- data/data/edifact/untdid/EDSD.d03a.csv +155 -0
- data/data/edifact/untdid/EDSD.d03b.csv +155 -0
- data/data/edifact/untdid/EDSD.d04a.csv +156 -0
- data/data/edifact/untdid/EDSD.d04b.csv +156 -0
- data/data/edifact/untdid/EDSD.d05a.csv +156 -0
- data/data/edifact/untdid/EDSD.d05b.csv +156 -0
- data/data/edifact/untdid/EDSD.d93a.csv +89 -0
- data/data/edifact/untdid/EDSD.d94a.csv +93 -0
- data/data/edifact/untdid/EDSD.d94b.csv +95 -0
- data/data/edifact/untdid/EDSD.d95a.csv +109 -0
- data/data/edifact/untdid/EDSD.d95b.csv +126 -0
- data/data/edifact/untdid/EDSD.d96a.csv +127 -0
- data/data/edifact/untdid/EDSD.d96b.csv +136 -0
- data/data/edifact/untdid/EDSD.d97a.csv +136 -0
- data/data/edifact/untdid/EDSD.d97b.csv +138 -0
- data/data/edifact/untdid/EDSD.d98a.csv +138 -0
- data/data/edifact/untdid/EDSD.d98b.csv +146 -0
- data/data/edifact/untdid/EDSD.d99a.csv +148 -0
- data/data/edifact/untdid/EDSD.d99b.csv +152 -0
- data/data/edifact/untdid/EDSD.s93a.csv +89 -0
- data/data/edifact/untdid/IDCD.d00a.csv +93 -0
- data/data/edifact/untdid/IDCD.d00b.csv +96 -0
- data/data/edifact/untdid/IDCD.d01a.csv +95 -0
- data/data/edifact/untdid/IDCD.d01b.csv +95 -0
- data/data/edifact/untdid/IDCD.d01c.csv +96 -0
- data/data/edifact/untdid/IDCD.d02a.csv +96 -0
- data/data/edifact/untdid/IDCD.d02b.csv +96 -0
- data/data/edifact/untdid/IDCD.d03a.csv +96 -0
- data/data/edifact/untdid/IDCD.d03b.csv +96 -0
- data/data/edifact/untdid/IDCD.d04a.csv +96 -0
- data/data/edifact/untdid/IDCD.d04b.csv +96 -0
- data/data/edifact/untdid/IDCD.d05a.csv +96 -0
- data/data/edifact/untdid/IDCD.d05b.csv +96 -0
- data/data/edifact/untdid/IDCD.d97a.csv +57 -0
- data/data/edifact/untdid/IDCD.d97b.csv +64 -0
- data/data/edifact/untdid/IDCD.d98a.csv +65 -0
- data/data/edifact/untdid/IDCD.d98b.csv +67 -0
- data/data/edifact/untdid/IDCD.d99a.csv +73 -0
- data/data/edifact/untdid/IDCD.d99b.csv +87 -0
- data/data/edifact/untdid/IDMD.d00a.csv +132 -0
- data/data/edifact/untdid/IDMD.d00b.csv +236 -0
- data/data/edifact/untdid/IDMD.d01a.csv +237 -0
- data/data/edifact/untdid/IDMD.d01b.csv +238 -0
- data/data/edifact/untdid/IDMD.d01c.csv +243 -0
- data/data/edifact/untdid/IDMD.d02a.csv +243 -0
- data/data/edifact/untdid/IDMD.d02b.csv +243 -0
- data/data/edifact/untdid/IDMD.d03a.csv +243 -0
- data/data/edifact/untdid/IDMD.d03b.csv +243 -0
- data/data/edifact/untdid/IDMD.d04a.csv +243 -0
- data/data/edifact/untdid/IDMD.d04b.csv +243 -0
- data/data/edifact/untdid/IDMD.d05a.csv +243 -0
- data/data/edifact/untdid/IDMD.d05b.csv +243 -0
- data/data/edifact/untdid/IDMD.d97a.csv +41 -0
- data/data/edifact/untdid/IDMD.d97b.csv +70 -0
- data/data/edifact/untdid/IDMD.d98a.csv +70 -0
- data/data/edifact/untdid/IDMD.d98b.csv +70 -0
- data/data/edifact/untdid/IDMD.d99a.csv +112 -0
- data/data/edifact/untdid/IDMD.d99b.csv +122 -0
- data/data/edifact/untdid/IDSD.d00a.csv +72 -0
- data/data/edifact/untdid/IDSD.d00b.csv +76 -0
- data/data/edifact/untdid/IDSD.d01a.csv +75 -0
- data/data/edifact/untdid/IDSD.d01b.csv +75 -0
- data/data/edifact/untdid/IDSD.d01c.csv +77 -0
- data/data/edifact/untdid/IDSD.d02a.csv +77 -0
- data/data/edifact/untdid/IDSD.d02b.csv +77 -0
- data/data/edifact/untdid/IDSD.d03a.csv +77 -0
- data/data/edifact/untdid/IDSD.d03b.csv +77 -0
- data/data/edifact/untdid/IDSD.d04a.csv +77 -0
- data/data/edifact/untdid/IDSD.d04b.csv +77 -0
- data/data/edifact/untdid/IDSD.d05a.csv +77 -0
- data/data/edifact/untdid/IDSD.d05b.csv +77 -0
- data/data/edifact/untdid/IDSD.d97a.csv +33 -0
- data/data/edifact/untdid/IDSD.d97b.csv +42 -0
- data/data/edifact/untdid/IDSD.d98a.csv +43 -0
- data/data/edifact/untdid/IDSD.d98b.csv +44 -0
- data/data/edifact/untdid/IDSD.d99a.csv +52 -0
- data/data/edifact/untdid/IDSD.d99b.csv +63 -0
- data/lib/edi4r-tdid.rb +52 -0
- data/test/dirlist +32 -0
- data/test/dirlist_iedi +19 -0
- data/test/test_diags.rb +160 -0
- data/test/test_segments.rb +109 -0
- metadata +249 -0
data/AuthorCopyright
ADDED
data/COPYING
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
|
2
|
+
You can redistribute it and/or modify it under either the terms of the GPL
|
3
|
+
(see the file GPL), or the conditions below:
|
4
|
+
|
5
|
+
1. You may make and give away verbatim copies of the source form of the
|
6
|
+
software without restriction, provided that you duplicate all of the
|
7
|
+
original copyright notices and associated disclaimers.
|
8
|
+
|
9
|
+
2. You may modify your copy of the software in any way, provided that
|
10
|
+
you do at least ONE of the following:
|
11
|
+
|
12
|
+
a) place your modifications in the Public Domain or otherwise
|
13
|
+
make them Freely Available, such as by posting said
|
14
|
+
modifications to Usenet or an equivalent medium, or by allowing
|
15
|
+
the author to include your modifications in the software.
|
16
|
+
|
17
|
+
b) use the modified software only within your corporation or
|
18
|
+
organization.
|
19
|
+
|
20
|
+
c) give non-standard binaries non-standard names, with
|
21
|
+
instructions on where to get the original software distribution.
|
22
|
+
|
23
|
+
d) make other distribution arrangements with the author.
|
24
|
+
|
25
|
+
3. You may distribute the software in object code or binary form,
|
26
|
+
provided that you do at least ONE of the following:
|
27
|
+
|
28
|
+
a) distribute the binaries and library files of the software,
|
29
|
+
together with instructions (in the manual page or equivalent)
|
30
|
+
on where to get the original distribution.
|
31
|
+
|
32
|
+
b) accompany the distribution with the machine-readable source of
|
33
|
+
the software.
|
34
|
+
|
35
|
+
c) give non-standard binaries non-standard names, with
|
36
|
+
instructions on where to get the original software distribution.
|
37
|
+
|
38
|
+
d) make other distribution arrangements with the author.
|
39
|
+
|
40
|
+
4. You may modify and include the part of the software into any other
|
41
|
+
software (possibly commercial). But some files in the distribution
|
42
|
+
are not written by the author, so that they are not under these terms.
|
43
|
+
|
44
|
+
For the list of those files and their copying conditions, see the
|
45
|
+
file LEGAL.
|
46
|
+
|
47
|
+
5. The scripts and library files supplied as input to or produced as
|
48
|
+
output from the software do not automatically fall under the
|
49
|
+
copyright of the software, but belong to whomever generated them,
|
50
|
+
and may be sold commercially, and may be aggregated with this
|
51
|
+
software.
|
52
|
+
|
53
|
+
6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
|
54
|
+
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
55
|
+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
56
|
+
PURPOSE.
|
data/ChangeLog
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
= Change log
|
2
|
+
|
3
|
+
== 0.6.3.1
|
4
|
+
Bug fix for Windows implementation of class "Pathname".
|
5
|
+
|
6
|
+
== 0.6.3
|
7
|
+
New test (test_segments.rb) which actually loads all segments of
|
8
|
+
all message types, thus applying more tests to the CSV files.
|
9
|
+
|
10
|
+
This test discovered a new bug. This was fixed in CDE_filter.rb and
|
11
|
+
seg_filter.rb. Now some previously missing segments and CDEs at the beginning
|
12
|
+
of files ED[CS]D.*.csv are included.
|
13
|
+
|
14
|
+
The new test also searches for "distant duplicates", i.e. (C)DE of the
|
15
|
+
same name in a single segment, but with some other entity in between.
|
16
|
+
Many such occurrences are found in some early release - please ignore.
|
17
|
+
|
18
|
+
Note that the search for distant DE duplicates within CDEs is
|
19
|
+
commented out: There are many such cases, it appears to be a
|
20
|
+
frequent feature of UN/EDIFACT CDEs. Ex.: 3055, 1131 in C088, C243;
|
21
|
+
5275 in C203; 7064, 7143 in C402.
|
22
|
+
Keep the exitance of such distant duplicates in mind when accessing
|
23
|
+
them through method a3055 and such: Though you get all occurrences back
|
24
|
+
as an array, remember that they are not adjacent.
|
25
|
+
|
26
|
+
== 0.6.2
|
27
|
+
Description of CSV files now included
|
28
|
+
|
29
|
+
== 0.6.1
|
30
|
+
Issues in UN/TDID messages patched and reported to UN/ECE
|
31
|
+
Test code adapted to edi4r >= 0.9.1
|
32
|
+
|
33
|
+
== 0.6.0
|
34
|
+
=== First release as a gem
|
35
|
+
* Split from the edi4r core package, turned into a separate one.
|
36
|
+
* Diagram test (unit test) added, resulting issues fixed
|
37
|
+
* RDoc documentation added
|
38
|
+
* Modular loading scheme for normdata added (through EDI_NDB_PATH)
|
39
|
+
* Rolled into a gem
|
40
|
+
|
41
|
+
== pre-0.6.0
|
42
|
+
* Used internally for projects and teaching, as part of "edi4r"
|
43
|
+
|
data/FileDescription
ADDED
@@ -0,0 +1,278 @@
|
|
1
|
+
= Description of the included CSV files
|
2
|
+
|
3
|
+
== Directory structure
|
4
|
+
|
5
|
+
[<tt>./data</tt>]
|
6
|
+
Base directory for all format descriptions
|
7
|
+
|
8
|
+
[<tt>./data/edifact</tt>]
|
9
|
+
Keeps descriptions of ISO 9735 and TDIDs as well as subsets
|
10
|
+
|
11
|
+
[<tt>./data/edifact/iso9735</tt>]
|
12
|
+
Descriptions of EDIFACT syntax versions 1-4: Service segments
|
13
|
+
and their composites and data elements, messages types
|
14
|
+
included at the syntax level (CONTRL, AUTACK, etc.)
|
15
|
+
|
16
|
+
These data are included in the base gem "edi4r"!
|
17
|
+
|
18
|
+
[<tt>./data/edifact/untdid</tt>]
|
19
|
+
Descriptions of all available UN Trade Data Interchange Directories
|
20
|
+
Main topic of this gem!
|
21
|
+
|
22
|
+
== File naming convention (in .../untdid)
|
23
|
+
<i>b</i>D<i>t</i>D.<i>vrrr</i>.csv
|
24
|
+
|
25
|
+
=== <i>b</i>: Batch or general vs. Interactive EDI
|
26
|
+
<i>b</i>=E:: General or batch EDI
|
27
|
+
<i>b</i>=I:: Interactive EDI only
|
28
|
+
|
29
|
+
=== <i>t</i>: Type of directory
|
30
|
+
<i>t</i>=M:: Message directory
|
31
|
+
<i>t</i>=S:: Segment directory
|
32
|
+
<i>t</i>=C:: Composite data element directory
|
33
|
+
<i>t</i>=D:: Data element directory
|
34
|
+
|
35
|
+
=== <i>v</i>: Version of directory
|
36
|
+
1:: Indicates 90.1, 90.2, 91.1, or 92.1
|
37
|
+
2:: Only 93.2
|
38
|
+
s:: Only S.93A
|
39
|
+
d:: all others
|
40
|
+
|
41
|
+
This value is typically mapped to DE 0052 of S009 or S306
|
42
|
+
|
43
|
+
=== <i>rrr</i>: Release of directory
|
44
|
+
* Examples: 911 (for 91.1), 93a (D93.A, S93.A), 05b (D.05B)
|
45
|
+
* This value is typically mapped to DE 0054 of S009 or S306
|
46
|
+
|
47
|
+
=== Examples:
|
48
|
+
EDCD.1911.csv:: The composite data element directory of version/release 91.1
|
49
|
+
EDSD.d93a.csv:: The segment directory of D.93A
|
50
|
+
IDMD.d05b.csv:: The part of message directory of D.05B containing the
|
51
|
+
interactive EDI messages
|
52
|
+
|
53
|
+
== Common data structure
|
54
|
+
|
55
|
+
* Each record is a single line in CSV format, with ';' as separator character
|
56
|
+
* Values are given in plain ASCII and are not quoted
|
57
|
+
* We assume that the separator character is never used as a regular content
|
58
|
+
character. Hence, there is no need for character escaping,
|
59
|
+
and none is provided.
|
60
|
+
|
61
|
+
== Code list directory
|
62
|
+
|
63
|
+
(sorry - this version does not include the code lists yet)
|
64
|
+
|
65
|
+
|
66
|
+
== Data element directory
|
67
|
+
|
68
|
+
A data element record is a simple sequence of 4 fields.
|
69
|
+
|
70
|
+
[Sample record]
|
71
|
+
<tt>1131;an..3;C;Code list qualifier</tt>
|
72
|
+
|
73
|
+
[Field 1, e.g. <tt>1131</tt>]
|
74
|
+
Tag of data element, always a 4-digit number.
|
75
|
+
|
76
|
+
[Field 2, e.g. <tt>an..3</tt>]
|
77
|
+
Representation of the data element.
|
78
|
+
|
79
|
+
[Field 3, e.g. <tt>C</tt>]
|
80
|
+
Usage indicator.
|
81
|
+
B:: Used in batch messages only
|
82
|
+
I:: Used in interactive messages only
|
83
|
+
C:: Common usage in both batch and interactive messages
|
84
|
+
Note: 'C' is also provided for the directories without interactive messages
|
85
|
+
|
86
|
+
[Field 4, e.g. <tt>Code list qualifier</tt>]
|
87
|
+
The data element name.
|
88
|
+
Note that the usually longer 'description' text is not provided here.
|
89
|
+
|
90
|
+
|
91
|
+
== Composite data element directory
|
92
|
+
|
93
|
+
A composite data element record consists of two header fields and a
|
94
|
+
variable number of field groups, each of which describing one
|
95
|
+
component data element of the composite.
|
96
|
+
|
97
|
+
Each field group consists of 4 fields. Header fields and field groups
|
98
|
+
may be identified simply by counting the fields - they are not
|
99
|
+
distinguished by e.g. a different separator character.
|
100
|
+
|
101
|
+
Each composite data element contains at least one such field group
|
102
|
+
(or else it would be useless), so a composite record consists of
|
103
|
+
2 + 4*n fields, with n >= 1.
|
104
|
+
|
105
|
+
[Sample record]
|
106
|
+
<tt>C107;TEXT REFERENCE;010;4441;M;an..17;020;1131;C;an..17;030;3055;C;an..3;</tt>
|
107
|
+
|
108
|
+
[Field 1, e.g. <tt>C107</tt>]
|
109
|
+
Tag of composite data element, always a character followed by a
|
110
|
+
3-digit number. Generally, the leading character is 'E' for a composite
|
111
|
+
used by interactive EDI segments, 'C' in the normal case, or 'S'
|
112
|
+
for service composites (provided by ISO 9735, not by the TDIDs).
|
113
|
+
|
114
|
+
[Field 2, e.g. <tt>TEXT REFERENCE</tt>]
|
115
|
+
The composite data element name.
|
116
|
+
Note that the usually longer 'description' text is not provided here.
|
117
|
+
|
118
|
+
[Component element field group, e.g. <tt>010;4441;M;an..17;</tt>]
|
119
|
+
There is one field group for each component data element.
|
120
|
+
Each field group comprises 4 sub-fields:
|
121
|
+
[Sub-field 1]
|
122
|
+
Sequence number of component, e.g. <tt>010</tt>
|
123
|
+
Always a 3-digit number. It is counted up in increments of 10 and
|
124
|
+
indicates the position of the component in the composite.
|
125
|
+
Note that sequence numbers are missing in the older UN/TDIDs, and that
|
126
|
+
this package adds them where missing simply by counting the components
|
127
|
+
in their documented sequence of occurrence.
|
128
|
+
[Sub-field 2]
|
129
|
+
Component data element tag, e.g. <tt>4441</tt>
|
130
|
+
[Sub-field 3]
|
131
|
+
Component data element status, e.g. <tt>M</tt>
|
132
|
+
For plain EDIFACT, only 'M' (mandatory) or 'C' occur.
|
133
|
+
Some subsets add other values here.
|
134
|
+
[Sub-field 4]
|
135
|
+
Component data element representation, e.g. <tt>an..17</tt>.
|
136
|
+
This field should match the corresponding value of this data element
|
137
|
+
as stated in the Data Element Directory.
|
138
|
+
|
139
|
+
|
140
|
+
== Segment directory
|
141
|
+
|
142
|
+
A segment record consists of two header fields and a
|
143
|
+
variable number of field groups, each of which describing one
|
144
|
+
included composite or simple data element.
|
145
|
+
|
146
|
+
Each field group consists of 4 fields. Header fields and field groups
|
147
|
+
may be identified simply by counting the fields - they are not
|
148
|
+
distinguished by e.g. a different separator character.
|
149
|
+
|
150
|
+
Each segment contains at least one such field group
|
151
|
+
(or else it would be useless), so a segment record consists of
|
152
|
+
2 + 4*n fields, with n >= 1.
|
153
|
+
|
154
|
+
[Sample records]
|
155
|
+
<tt>DTM;DATE/TIME/PERIOD;010;C507;M;1;</tt>
|
156
|
+
<tt>BGM;BEGINNING OF MESSAGE;010;C002;C;1;020;C106;C;1;030;1225;C;1;040;4343;C;1;</tt>
|
157
|
+
|
158
|
+
[Field 1, e.g. <tt>DTM</tt>]
|
159
|
+
Segment tag, always a 3-character string. Note that service segments
|
160
|
+
(those whose tags start with 'U') are provided by ISO 9735, not by the TDIDs.
|
161
|
+
|
162
|
+
[Field 2, e.g. <tt>DATE/TIME/PERIOD</tt>]
|
163
|
+
The segment element name.
|
164
|
+
Note that the usually more explicit 'description' text is not provided here.
|
165
|
+
|
166
|
+
[Data element field group, e.g. <tt>010;C507;M;1;</tt>]
|
167
|
+
There is one field group for each included (composite or plain) data element.
|
168
|
+
Each field group comprises 4 sub-fields:
|
169
|
+
[Sub-field 1]
|
170
|
+
Sequence number of component, e.g. <tt>010</tt>, always a 3-digit number.
|
171
|
+
It is counted up in increments of 10 and indicates the position of the
|
172
|
+
component in the composite.
|
173
|
+
|
174
|
+
Note that sequence numbers are missing in the older UN/TDIDs, and that
|
175
|
+
this package adds them where missing simply by counting the components
|
176
|
+
in their documented sequence of occurrence.
|
177
|
+
[Sub-field 2]
|
178
|
+
Data element tag, e.g. <tt>C507</tt> or <tt>1225</tt>.
|
179
|
+
This is a reference to the corresponding composite or data element
|
180
|
+
directory.
|
181
|
+
[Sub-field 3]
|
182
|
+
Data element status, e.g. <tt>M</tt>
|
183
|
+
For plain EDIFACT, only 'M' (mandatory) or 'C' occur.
|
184
|
+
Some subsets add other values here.
|
185
|
+
[Sub-field 4]
|
186
|
+
Data element repetition, in most cases <tt>1</tt>.
|
187
|
+
The ability to repeat data elements or composites within segments
|
188
|
+
is a feature introduced by syntax version 4 and so far is rarely used.
|
189
|
+
A value of '1' is added by this package to older releases which
|
190
|
+
did not yet provide it.
|
191
|
+
|
192
|
+
|
193
|
+
== Message directory
|
194
|
+
|
195
|
+
Basically, a message consists of a linear sequence of segments or
|
196
|
+
segment groups. Segment groups, however, may contain other segment groups
|
197
|
+
(in a non-recursive manner), and thus a message is a tree-like
|
198
|
+
(hierarchical) structure - with a main trunk and branches.
|
199
|
+
Each branch may be regarded as another trunk with optional branches.
|
200
|
+
|
201
|
+
We describe a message by listing all of its branches, including
|
202
|
+
the main branch (trunk), by supplying <b>one record for each branch</b>
|
203
|
+
(segment group) of a message.
|
204
|
+
|
205
|
+
The trunk record contains the message description, but no segment group name.
|
206
|
+
Records of dependent branches contain a dummy text (usually the simplified
|
207
|
+
segment group name) in the description field and their formal segment group
|
208
|
+
name, by which they are referenced from higher-level branches.
|
209
|
+
|
210
|
+
Each message branch record consists of two header fields and a
|
211
|
+
variable number of field groups, each of which describing one
|
212
|
+
included segment or segment group.
|
213
|
+
|
214
|
+
Each field group consists of 3 fields. Header fields and field groups
|
215
|
+
may be identified simply by counting the fields - they are not
|
216
|
+
distinguished by e.g. a different separator character. However,
|
217
|
+
the first header field contains sub-fields which are separated
|
218
|
+
by the ':' character (UNH style).
|
219
|
+
|
220
|
+
Each message record contains at least one such field group
|
221
|
+
(or else it would be useless), so a message record consists of
|
222
|
+
2 + 3*n fields, with n >= 1.
|
223
|
+
|
224
|
+
|
225
|
+
[Sample records]
|
226
|
+
<tt>BANSTA:D:93A:UN::;BANKING STATUS MESSAGE;UNH;M;1;SG1;M;1;SG2;M;2;SG3;C;5;SG4;C;99;SG8;C;1;UNT;M;1</tt>
|
227
|
+
<tt>BANSTA:D:93A:UN::SG6;SG06;GIS;M;1;DTM;C;1;SG7;C;99</tt>
|
228
|
+
<tt>BANSTA:D:93A:UN::SG7;SG07;ERC;M;1;FTX;C;5;DOC;C;5</tt>
|
229
|
+
|
230
|
+
[Field 1, e.g. <tt>BANSTA:D:93A:UN::</tt> or <tt>BANSTA:D:93A:UN::SG06</tt>]
|
231
|
+
This is the selector field. It uniquely identifies the branch described
|
232
|
+
by the following fields. In combination, the 6 sub-fields form
|
233
|
+
a unique lookup key:
|
234
|
+
|
235
|
+
[Sub-field 1, e.g. <tt>BANSTA</tt>]
|
236
|
+
Message name, always a 6-character string. Note that service messages
|
237
|
+
(e.g. 'CONTRL') are provided by ISO 9735, not by the TDIDs.
|
238
|
+
|
239
|
+
[Sub-field 2, e.g. <tt>D</tt>]
|
240
|
+
The message version, one of '1', '2', 'S', 'D'; cf. DE 0052.
|
241
|
+
|
242
|
+
[Sub-field 3, e.g. <tt>93A</tt>]
|
243
|
+
The message release, cf. DE 0054.
|
244
|
+
|
245
|
+
[Sub-field 4, e.g. <tt>UN</tt>]
|
246
|
+
The responsible agency (of this message); cf. DE 0051.
|
247
|
+
|
248
|
+
[Sub-field 5, empty for plain EDIFACT, but used by subsets (SV 1-3)]
|
249
|
+
The association assigned code, e.g. <tt>EAN008</tt> for subset EANCOM.
|
250
|
+
|
251
|
+
[Sub-field 6, e.g. <tt>SG7</tt> or empty]
|
252
|
+
The branch name; empty for the main trunk.
|
253
|
+
|
254
|
+
[Field 2, e.g. <tt>SG07</tt>]
|
255
|
+
The message description, e.g. <tt>BANKING STATUS MESSAGE</tt>,
|
256
|
+
or <tt>SG07</tt>. The description text for the main trunk is obtained
|
257
|
+
from the title of the corresponding UN/EDIFACT message type description.
|
258
|
+
For depending branches, this text equals prefix 'SG' appended
|
259
|
+
by the 2-digit segment group number.
|
260
|
+
|
261
|
+
[Segment field group, e.g. <tt>GIS;M;1;DTM;C;1;SG7;C;99</tt>]
|
262
|
+
There is one field group for each included segment or segment group.
|
263
|
+
Each field group comprises 3 sub-fields:
|
264
|
+
[Sub-field 1]
|
265
|
+
The segment tag or branch name, e.g. <tt>GIS</tt> or <tt>SG7</tt>.
|
266
|
+
In contrast to the description text, branch names (of segment groups)
|
267
|
+
do not include leading zeroes.
|
268
|
+
[Sub-field 3]
|
269
|
+
Segment or segment group status, e.g. <tt>M</tt>
|
270
|
+
For plain EDIFACT, only 'M' (mandatory) or 'C' occur.
|
271
|
+
Some subsets add other values here.
|
272
|
+
[Sub-field 4]
|
273
|
+
Segment or segment group repetition indicator.
|
274
|
+
|
275
|
+
Note: EDIFACT rules assign a level to each segment of a message type.
|
276
|
+
While this level usally reflects the hierarchy, level '0' comprises
|
277
|
+
an exception: Segments of the main trunk with status=='M' and
|
278
|
+
max. repetition=='1' belong to level 0, all others to higher levels.
|
data/LICENAGR.UNTDID
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
= Licence Agreement for the use of UN/EDIFACT Directory
|
2
|
+
|
3
|
+
IF YOU DOWNLOAD OR USE THIS PROGRAM, YOU AGREE TO THESE TERMS
|
4
|
+
|
5
|
+
The UN grants you a license to use this Directory only in the
|
6
|
+
country where you acquired it and/or the country(ies) where your
|
7
|
+
organization is located. The Directory is copyrighted and
|
8
|
+
licensed (not sold). We do not transfer title to the Directory
|
9
|
+
to you. You obtain no rights other than those granted you under
|
10
|
+
this licence.
|
11
|
+
|
12
|
+
Under this license, you may:
|
13
|
+
|
14
|
+
1. Use the Directory on one or more computers at a time within
|
15
|
+
your organization;
|
16
|
+
|
17
|
+
2. Make copies of the Directory for use or backup purposes
|
18
|
+
within your Enterprise/Organization;
|
19
|
+
|
20
|
+
3. Make copies of the original file you downloaded and
|
21
|
+
distribute it, provided that you transfer a copy of this
|
22
|
+
license to the other party. The other party agrees to these
|
23
|
+
terms by its first use of the Program.
|
24
|
+
|
25
|
+
You must reproduce the copyright notice and any other legend of
|
26
|
+
ownership on each copy or partial copy of the Directory.
|
27
|
+
|
28
|
+
Unless you have received written permission from the UN, you may
|
29
|
+
NOT:
|
30
|
+
|
31
|
+
1. Sell, sub-license, rent, lease, or assign the Directory; and
|
32
|
+
2. Modify the Directory and distribute it.
|
33
|
+
|
34
|
+
We do not warrant that the Directory is free from claims by a
|
35
|
+
third party of copyright, patent, trademark, trade secret , or
|
36
|
+
any other intellectual property infringement.
|
37
|
+
|
38
|
+
Under no circumstances are we liable for any of the following:
|
39
|
+
|
40
|
+
1. Third-party claims against you for losses or damages;
|
41
|
+
2. Loss of, or damage to, your records or data; or
|
42
|
+
3. Economic consequential damages (including lost profits or
|
43
|
+
savings) or incidental damages, even if we are informed of
|
44
|
+
their possibility.
|
45
|
+
|
46
|
+
Some jurisdictions do not allow these limitations or exclusions,
|
47
|
+
so that they may not apply to you.
|
48
|
+
We have no obligation to provide service, defect correction, or
|
49
|
+
any maintenance for the Directory, other than through the
|
50
|
+
UN/EDIFACT Data Maintenance Process. We have no obligation to
|
51
|
+
supply any Directory updates or enhancements to you even if such
|
52
|
+
are or later become available.
|
53
|
+
|
54
|
+
IF YOU DOWNLOAD OR USE THIS PROGRAM, YOU AGREE TO THESE TERMS.
|
55
|
+
|
56
|
+
THERE ARE NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDED THE IMPLIED
|
57
|
+
WARRANTIES OR MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
58
|
+
PURPOSE.
|