When designing your translation objects template, you have to break your message into separate nodes. Later you can modify these nodes and configure their properties. You can further break the nodes into child-nodes by setting separators which apply to the selected parent-node only. The following procedure is the continuation of the procedure in section Designing the Protocol Message Layer.
>> To set message separators
2. | In the body of the window, select the message part to which you want to apply delimiters (a record, node, or All records), and then click Delimiters to open the Delimiters pane. |

3. | Set the message separators using one of the following options: |
• | Select the Delimiters bullet to enter string values that will be used to break the message into nodes in the red boxes. For example, to break the message by its lines (so that the XML template will reflect the number of lines that the message from the instrument contains), enter \r\n, then in the next red box that appears, enter \n\r, then in the next - \r, and in the next - \n. |
NOTE The parameters in the above example are the commonly used content separators as line breaks. When adding other delimiters to further break the message into nodes, you will be putting other signs in the red fields, which are found within the message and with which you will further break the message. For example, you might want to further break the message into different registers each time there is a ^ sign, so you will enter this delimiter in the red box. You will have to be familiar with the instrument's vocabulary, and will be given the signs' interpretations together with the instrument's properties each time a new instrument is connected to your system.
• | Select the Position bullet to enter the numeric values by which the message will be broken into records in the red boxes. For example, to break the message to nodes first of which contains three characters, the second - 2, and the last one all the rest of the message, enter 3, and then in the next red box that appears, enter 2. To prevent breaking the resulting nodes into more child-nodes recursively, according to the above logic, clear the Recursive check box. |
4. | Below the red boxes, select the message branches to which you want to apply the message separators: select All to apply them to the entire PMDO (your translation objects template); alternatively, select the relevant message branch. For more information about message branches, see section PMDO Navigation. |
5. | To facilitate the use of the set message separators, select the manner in which you want to apply them: |
• | Determine whether to apply the set delimiters to the whole message by marking the Is Global option. |
• | Determine whether to keep repeating the set separating pattern throughout the entire message by marking the Repetitive option. For example, you might want to continue breaking your message into nodes that contain three and two characters throughout the entire message. |
• | If you want to apply the set separators starting with the end of the message towards the beginning, mark the Reverse option (available only for the Position separator). |
• | If you want to create an empty record at the end of the message (necessary for the correct translation of the CCXML back into the message format), mark the Trailing option (applicable only to records). |
6. | Select the manner in which the message will be broken from the following options: |
• | Select the Record option to break the message into records according to the set above separation patterns, and then select from the Root drop-down list the node which would represent the record. The default is 1 (the first node), but if for example you want the last node in the record to represent the record, select -1. |
• | Select the Linear bullet to break the message into a number of registers on an equal level (for example, to break a node into a number of nodes that will be represented as a linear list of nodes). |
• | Select the Array bullet to break the message into a number of registers contained within the same node on the child-level. |
|