UN/EDIFACT Adapter Reference
Tagged Values on UN/EDIFACT Classes
<<EDIFACTInterchange>> and <<X12Interchange>>
Tagged Value | Value | Description | Values/Example | |
---|---|---|---|---|
composeEmptyAttributes | true/false | Builder 6.0.17.1If set to true on composing an Edifact or X12 document, the EDIFACT Adapter will write delimiters for all empty attributes. If set to false, no delimiters will be written for empty attributes. If this tagged value is not set, the Runtime will assume a default value true.
| true | Write delimiters for empty attributes. |
false | Omit empty attributes.Omit empty attributes. | |||
releaseCharacter | any single character | If, on composing an Edifact document, an attribute value contains a reserved character, the EDIFACT Composer adds the releaseCharacter in front of each reserved character. EDIFACT Parser removes the releaseCharacter from the input. A list of reserved characters can be defined in tagged value reservedCharacters (see below). | releaseCharacter="?" | |
reservedCharacters | Array of character | List of special characters that need to be escaped by a releaseCharacter (see above). On composing, a release character will be added in front of each reserved character. While parsing, the release character will be removed. All segmentTerminator, component-DataElementSeparator, dataElementSeparator and releaseCharacter must be marked as reserved characters. | reservedCharacters= "", ":", "+", "?" | |
segmentTerminator | any String | Delimiter in between segments, default is "~ " (tilde sign) for X12 and "' " (tick mark) for EDIFACT. | segmentTerminator= "<newline>" |
<<EDIFACTMessage>> and <<X12Transaction>>
Any Interchange record contains meta data about the record, like the optional UNA segment or the trailing UNB, UNG or UNZ segments. In between these segments, the message content is defined.
The introduction to the message content is virtual object Message with stereotype <<EDIFACTMessage>>. This object has no representation within the EDIFACT message string and is created by its triggeringSegment . The behavior is similar to <<EDIFACTFunctionGroup>> (see below).
Tagged Value | Value | Description | Example |
---|---|---|---|
triggeringSegment | any String | Segment identification to create an instance of the EDIFACT message. On compose, the message is only created, if a segment with the correct identification is delivered. If it is missing, no message element will be created. | triggeringSegment="UNH" |
<<EDIFACTFunctionGroup>> and <<X12FunctionGroup>>
Logical grouping element without representation within the UN/EDIFACT interchange. Groups UN/EDIFACT messages of one type for multiplicity occurrence within the UN/EDIFACT interchange.
Tagged Value | Value | Description | Example |
---|---|---|---|
triggeringSegment | any String | Segment identification to create an instance of the <<EDIFACTSegmentGroup>>. On compose, the segment group is only created if a segment with the correct identification is delivered. If it is missing, no segment group will be created. | triggeringSegment="UNH" |
<<EDIFACTSegmentGroup>> and <<X12Loop>>
Logical grouping element without representation within the UN/EDIFACT interchange. Groups two or more segments for multiplicity occurrence within the UN/EDIFACT interchange.
Tagged Value | Value | Description | Example |
---|---|---|---|
parseMacro | {macro expression} | parseMacro is executed on parsing a EDIFACT Message. A macro can contain multiple commands that have to be separated by commas or spaces. For details on macro commands see: Macro Expression. | GetCounter(0) |
composeMacro | composeMacro is executed on composing a EDIFACT message. A macro can contain multiple commands that have to be separated by commas or spaces. For details on macro commands see: Macro Expression. | ||
triggeringSegment | any String | Segment identification to create an instance of the <<EDIFACTSegmentGroup>>. On compose, the segment group is only created if a segment with the correct identification is delivered. If it is missing no segment group will be created. |
<<EDIFACTSegment>> and <<X12Segment>>
Segment element within EDIFACT structure.
Tagged Value | Value | Description | Example |
---|---|---|---|
parseMacro | {macro expression} | parseMacro is executed on parsing a EDIFACT Message. A macro can contain multiple commands that have to be separated by commas or spaces. For details on macro commands see: Macro Expression. | GetCounter(0) |
composeMacro | composeMacro is executed on composing a EDIFACT message. A macro can contain multiple commands that have to be separated by commas or spaces. For details on macro commands see: Macro Expression. | ||
dataElementSeparator | any single character | delimiter in between elements, default is "*" for X12 and "+" for EDIFACT | dataElementSeparator= "*" |
suppressEscaping | true/false | Switch for enable or disable escaping. | suppressEscaping= false |
<<EDIFACTCompositeDataElement>> and <<X12CompositeDataElement>>
A EDIFACT segment has one or more data elements. A data element may consist of a single data item, e.g. "2310 Delivery month" in which case it is called a simple data element, or it may consist of several data items, e.g. the composite data element "C198 PRODUCT IDENTIFICATION" which consists of two data elements, 7020 Article Number and 7823 Article Number Qualifier. In this case it is called a composite data element and is modeled with <<EDIFACTCompositeDataElement>>.
Tagged Values | Value | Description | Example |
---|---|---|---|
parseMacro | {macro expression} | parseMacro is executed on parsing a EDIFACT Message. A macro can contain multiple commands that have to be separated by commas or spaces. For details on macro commands see: Macro Expression. | GetCounter(0) |
composeMacro | composeMacro is executed on composing a EDIFACT message. A macro can contain multiple commands that have to be separated by commas or spaces. For details on macro commands see: Macro Expression. | ||
dataElementSeparator | any single character | delimiter in between complex elements, default is ":" for X12 and EDIFACT | dataElementSeparator= ":" |
suppressEscaping | true/false | Switch for enable or disable escaping. | suppressEscaping= false |
<<EDIFACTServiceStringAdvice>>
For class UNA, a special stereotype <<EDIFACTServiceStringAdvice>> is defined. The reason is, that the class UNA must be position based instead of delimited. The ISA class has the analogous meaning for X12 messages.
Tagged Values: none
UN/EDIFACT Association Ends
Association End Specifications
Setting | Description | Example |
---|---|---|
Name | given name to reference the Association to the child element | UNG |
Multiplicity | declare the possible multiplicity of an associated element. | 0..* |
Visibility | declares the visibility of the associated Class | public |
Navigable | defines if the Class on the association end is navigable | true |
Is Unique | declares the association name to be unique | true |
Tagged Values
<<FlatFileRecord>>
Tagged Value | Value | Description | Example |
---|---|---|---|
order | any Integer | define the order within the associations. The order is taken for composing and parsing. This tagged value is mandatory. |
|
<<FlatFileSubRecord>>
Tagged Value | Value | Description | Example |
---|---|---|---|
evaluationOrder | any Integer | define the order for checking all conditions on the source class element. | evaluationOrder=1 |
UN/EDIFACT Adapter Actions
Tagged Values
Name | Mandatory | Description | Allowed Values | |
---|---|---|---|---|
action | ![]() | Specify the action of the adapter: parse or compose. | compose | Compose a file or file blob from a given EDI data structure. |
parse | Parse an EDI file or file blob to an EDI data structure. | |||
alias | Specify an alias that links to an input file defined in the component diagram. | a valid <<FileAlias>> |
Parameters Action "parse"
Name | Type | Direction | Mandatory | Description | Allowed Values | Example | |
---|---|---|---|---|---|---|---|
name | String | in | (![]() | Specify a full path to an EDI File containing a UN/EDIFACT or X12 message. Alternatively, you can parse EDI data from a Blob object (see parameter data). Note, that the name parameter takes priority over data. | tmp/myFile.txt | ||
data | Blob | in | (![]() | Provide the EDI data to be parsed. Alternatively, you can specify a path to an EDI File in the file system (see parameter name). Note, that the name parameter takes priority over data. | |||
encoding | String | in | Provide the encoding of the EDI data to be parsed as specified in the Charset Definitions appendix. | any valid encoding (see Charset Definitions) | UTF-8 | ||
default | ISO-8859-1 (Latin1) | ||||||
locale | NumbersLocale | in | Specify how number values will be treated, when parsed from the EDI data (decimal point, currency symbol, ...). You can overwrite the system locales here, if the file was written with divergent locales. Refer to Number Formatting for more information. | default | system locales | ||
<any> | Any <<EDIFACTInterchange>> <<X12 Interchange>> | out | ![]() | The adapter returns a parsed EDI object. The class defining the type of this object should have stereotype <<EDIFACTInterchange>> or <<X12 Interchange>>. |
Parameters Action "compose"
Name | Type | Direction | Mandatory | Description | Allowed Values | Example | |
---|---|---|---|---|---|---|---|
<any> | Any <<EDIFACTInterchange>> <<X12 Interchange>> | in | ![]() | Provide an object containing the EDI data. The class defining the type of this object should have stereotype <<EDIFACTInterchange>> or <<X12 Interchange>>. | |||
encoding | String | in | Provide the encoding of the EDI data to be composed as specified in the Charset Definitions appendix. | any valid encoding (see Charset Definitions) | UTF-8 | ||
default | ISO-8859-1 (Latin1) | ||||||
locale | NumbersLocale | in | Specify how number values will be treated, when composed to the EDI data (decimal point, currency symbol, ...). You can overwrite the system locales here, if the file was written with divergent locales. Refer to Number Formatting for more information. | default | system locales | ||
name | String | in | (![]() | Specify a full path to a file, if you want to write the <<EDIFACTInterchange>> or <<X12 Interchange>> object to the file system. Alternatively, you can compose the EDI data to a Blob object (see parameter data). Note, that the name parameter takes priority over data. | tmp/myFile.txt | ||
data | Blob | out | (![]() | If you want to compose the <<EDIFACTInterchange>> or <<X12 Interchange>> object to a Blob object, use this parameter as output of the compose action. Alternatively, you can write the composed EDI data directly to the file system (see parameter name). Note, that the name parameter takes priority over data. |