<edifact-edi:config name="EDIFACT_EDI__Configuration" identKeys="true" doc:name="EDIFACT EDI: Configuration">
<edifact-edi:schemas>
<edifact:schema value="/edifact/d96a/ORDERS.esl"/>
</edifact-edi:schemas>
</edifact-edi:config>
EDIFACT EDI Connector 2.7 Configuring Schemas - Mule 4
Standard versions of the schemas for all defined EDIFACT messages and supported versions are included with this connector. If your implementation conventions differ from the standard, you can create schemas to describe your messages.
Set Your Schema Locations
To configure schemas in Anypoint Studio:
-
Switch to the XML view by clicking Configuration XML.
-
Modify your EDIFACT EDI configuration to include a list of all schemas by adding an
<http://edischema[edi:schema]>
element for each document type:
After you create a global element for your EDIFACT EDI in Studio, configure any schemas and operations.
Configuration Options in XML
All values listed in the Studio configuration can be set directly in XML.
General parameters control both Send and Receive document handling.
XML Value | Studio Option |
---|---|
schemas=list of values |
List of schema paths the connector can use. Each path can be either a file system or |
stringSubstitutionChar |
Substitution character used to replace invalid characters within string values when using the syntax level UNOA or UNOB. |
separatorUsage="USE_DEFAULTS" "USE_SPECIFIED_FOR_WRITES" "USE_SPECIFIED_FOR_ALL" |
Specification to use either separator or release characters as defaults for messages. |
dataSeparator="+" |
Data element separator character. |
componentSeparator=":" |
Component element separator character. |
repetitionSeparator="*" |
Repetition separator character. |
segmentTerminator="'" |
Segment terminator character. |
releaseCharacter="?" |
Release character. |
Self-Identification Parameters
Use these parameters to identify your side of the trading partner relationship:
XML Value | Studio Option |
---|---|
interchangeIdSelf |
Mule interchange Sender or Receiver ID (UNB2.1/UNB3.1). |
interchangeIdQualifierSelf |
Interchange Sender or Receiver ID qualifier (UNB2.2/UNB3.2). |
Partner Identification Parameters
These identify your partner.
XML Value | Studio Option |
---|---|
interchangeIdPartner |
Partner interchange Sender or Receiver ID for Mule application (UNB2.1/UNB3.1). |
interchangeIdQualifierPartner |
Partner interchange Sender or Receiver ID qualifier (UNB2.2/UNB3.2). |
Parser Parameters for Error Conditions
These control the parser operation and the types of error conditions that reject Receive messages.
XML Value (default) | Studio Option |
---|---|
enforceLengthLimits="true" |
Enforce the minimum and maximum lengths for receive values. |
truncateExceedingMaxLength="false" |
Truncate to the maximum lengths for received values. |
enforceValueRepeats="true" |
Enforce the repetition count limits for receive values. |
enforceReadCharacters="true" |
Enforce valid characters for a Read operation. Only applies when using syntax levels |
allowUnknownSegments="false" |
Allow unknown segments in a message. |
enforceSegmentOrder="true" |
Enforce the segment order in a message. |
allowUnusedSegments="false" |
Allow segments marked as |
enforceSegmentRepeats="true" |
Enforce segment repetition count limits in a message. |
receiveEncodingOverride="false" |
Java character encoding used for Receive messages. This overrides receive UNB. |
requireUniqueInterchanges="true" |
Require unique interchange control references (such as UNB.5). The default behavior records the interchange numbers previously processed and rejects duplicate interchange numbers from the same partner. It is derived from the interchange Sender and Receiver identification. Setting to |
requireUniqueMessages="false" |
Enforce globally unique message reference numbers (UNH.1) for received messages. By default, message reference numbers need to be unique only within a particular interchange. Setting to |
daysToStore="30" |
Minimum number of days to store interchange, group, and message numbers for uniqueness checking. |
enforceCodeSetValidationsParse="false" |
Enforce code set validations on the Read operation. |
parseUseVersionAssociationCode="false" |
Enforce Edifact version using UNH0205 (association code) on the Read operation. |
Writer Parameters
These control the types of writer operations.
XML Value | Studio Option |
---|---|
characterEncoding="ASCII_B" |
Character encoding used for writing messages. There must be one defined in each EDIFACT syntax version. |
sendSyntaxVersion="VERSION4" |
Syntax version for Send messages. Used to determine the data structures for service segments and CONTRL acknowledgment message structures in DataSense metadata for both Send and Receive. |
lineEnding="NONE" "LF" "CRLF" "CR" |
Line ending to add between segments. Improves the readability of the output message text by adding line endings between segments. |
writeUseCRLFLastLine="false" |
Use the configured Segment Line Ending value at the end of the last line. |
alwaysSendUNA="false" |
Always send the UNA service segment. A UNA is included only in an interchange when the syntax separator characters don’t match the defaults for both the syntax version and character encoding when in use. Setting to |
enforceWriteCharacters="true" |
Enforce valid characters for a Write operation. This applies when using syntax levels |
sendUniqueMessageNumbers="false" |
Send unique message reference numbers (UNH.1). |
initialInterchangeReference="1" |
The initial interchange control reference used for outgoing messages. |
initialMessageReference="1" |
The initial Message Reference Number used for outgoing messages. |
requestAcks="false" |
Request acknowledgments for Send interchanges using the Acknowledgment Request field (UNB.9). |
testIndicator="" |
Test indicator digit used on Send interchanges (UNB.11). By default interchanges are not sent as tests. |
useSuppliedValues="false" |
Choose your own data values for control-segment identifiers such as |
writeEnforceLengthLimits="true" |
Enforce minimum and maximum lengths for write values. The default of |
writeTruncateExceedingMaxLength="false" |
Truncate to the maximum lengths for received values. |
enforceCodeSetValidationsWrite="false" |
Enforce code set validations on the Write operation. |
writeUseVersionAssociationCode="false" |
Enforce Edifact version using UNH0205 (association code) on the Write operation. |
Write-Batch Parameters
These control the types of write-batch operations.
XML Value | Studio Option |
---|---|
batchCharacterEncoding="ASCII_B" |
Character encoding used for writing messages. There must be one defined in each EDIFACT syntax version. |
batchSendSyntaxVersion="VERSION4" |
Syntax version for Send messages. Used to determine the data structures for service segments and CONTRL acknowledgment message structures in DataSense metadata for both Send and Receive. |
batchLineEnding="NONE"/"LF"/"CRLF"/"CR" |
Line ending to add between segments. Improves the readability of the output message text by adding line endings between segments. |
batchUseCRLFLastLine="false" |
Use the configured Segment Line Ending value at the end of the last line. |
batchAlwaysSendUNA="false" |
Always send the UNA service segment. A UNA is included only in an interchange when the syntax separator characters don’t match the defaults for both the syntax version and character encoding when in use. Setting to |
batchEnforceWriteCharacters="true" |
Enforce valid characters for a Write operation. This applies when using syntax levels |
batchSendUniqueMessageNumbers="false" |
Send unique message reference numbers (UNH.1). |
batchInitialInterchangeReference="1" |
The initial interchange control reference used for outgoing messages. |
batchInitialMessageReference="1" |
The initial Message Reference Number used for outgoing messages. |
batchRequestAcks="false" |
Request acknowledgments for Send interchanges using the Acknowledgment Request field (UNB.9). |
batchTestIndicator="" |
Test indicator digit used on Send interchanges (UNB.11). By default interchanges are not sent as tests. |
batchUseSuppliedValues="false" |
Choose your own data values for control-segment identifiers such as |
batchOutputEdiMimeType="APPLICATION_PLAIN"/"APPLICATION_EDIFACT" |
Output MIME type to be set for the message. |
batchInterchangeControlNumberKey="" |
Interchange number key for object store. If a key is specified, then that key is used for subsequent operations involving the object store for interchange control numbers. |
batchMessageControlNumberKey="" |
Message control number key for object store. If a key is specified, then that key is used for subsequent operations involving the object store for the message control number. |
batchEnforceLengthLimits="true" |
Enforce minimum and maximum lengths for write values. If true, a element with values too long or too short will throw up exception; if false, the values are used anyway. |
batchTruncateExceedingMaxLength="false" |
Truncate to the maximum lengths for received values. |
enforceCodeSetValidationsBatch="false" |
Enforce code set validations on the Write Batch operation. |
batchUseVersionAssociationCode="false" |
Enforce Edifact version using UNH0205 (association code) on the Write Batch operation. |
Next Step
After you complete configuring the connector, you can try the Examples.