EagleML Message Headers

There are two main types of EagleML messages and there is a high level of relationship between their message headers:

1. Control Messages (also known as CMs or RunTaskRequest (RTRs)):

  • Message level header is very important for control messages.

  • Transaction level header is omitted in control messages.

  • For more information, see Format the Control Message Header.

2. Data Messages:

  • Data messages should contain a Transaction level header.

  • Some of its nodes may be involved in processing logic (this varies for different objects).

The headers for control messages and data messages have common elements that are encapsulated in most base type MessageHeader. However, they also have specific elements based on the purpose of the message to reflect integration patterns such as Message ID, Correlation ID, and Message Address.

While Message level is important for control messages, for data messages, it would have most of its elements optional.

Transaction Level Header for Data Messages

This table describe the transaction level header for a data message.

Node

Description

Optional/Required

Node

Description

Optional/Required

transactionDate

Transaction date

optional

batchKey

Contains information on the so-called batch key used to group data (EntityID^EffectiveDate^sourcename)

usually optional but required when you load Warehouse objects in batch mode.

subBatchKey

 

 

action

Defines whether to add, delete or update data in database (ADD, DELETE, UPDATE)

optional

correlationId

Unique message identifier processed and displayed by Message Center

optional

businessTaskId

Business task identifier processed and displayed by Message Center

optional

Allows the use of special symbols:  ~ ! @ # $ % ^ _ + / \ } [ || ] { : ; - * (This is not recommended).

 

sequenceNumber

Defines file number in the sequence

usually optional but required when you are using Sequencer

isLastInSequence

Makes the Sequencer turn off after processing this file, if its value is TRUE.

usually optional but required when you are using Sequencer

totalCount

Counter

usually optional but required when you are using Sequencer

objectType

Router sends the message to a specific rule according to this node. Case-sensitive node.

required

objectId

Object Identifier

optional

objectDescription

Object description

optional

updateTimestamp

 

optional

procedureSwitch

 

 

deltaBased

 

 

checkActivity

 

 

processingOptions

 

 

enableSourceMappingFlag

 

 

codeTranslations

 

If codeTranslations node contains ‘primaryExchangeCode’ –

<codeTranslations>primaryExchangeCode</codeTranslations>

then Primary Exchange Code value (<primaryExchangeCode> node will be mapped to the Code Translation lookup pan-lcode-translation.htm as incoming value for tag 1176 (From Code Value). The output value – tag 1103 (To Code Value) will be mapped to GenericSMF stored procedure and Security Resolution logic (to tag 1981 and tag 17) if this value is not null.

This logic supports the following inbound interfaces:

  • GenericSMF, Underlying Model of GenericSMF and Forward SMF

  • AccountingSMF

  • MultilegSMF

  • UnderltingSMF

  • DeleteSMF

  • SMF MI

  • AccountingCA

  • GenericCA

  • CancelCA

  • MandatoryCAExclusion

  • VoluntaryCAElection

  • AnalyticEquity

  • AnalyticFI

  • GenericIssueAnalytic

  • SMFIdentifiers

  • SMFIdentifier

  • ReferenceElementOverride

  • IssuePrice

  • ExchangePrice

  • IssuePcPrice

  • IssueFxRateDemand

  • Rating

  • RecoveryRate

  • IssuerRole

  • IssuerRole – delete rule

  • IssueVariableRate

  • ModelPrice

  • NaicDesignation

  • Schedule

  • SecurityNotes

  • SecurityOverrides

  • TimeSeries

  • VendorCashFlow

Examples of Transaction Level Headers

Reference Data Object Transaction Level Header

<EagleML xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" eaglemlVersion="2-0" eaglemlType="ReferenceTransactionMessage" xsi:schemaLocation="http://www.eagleinvsys.com/2011/EagleML-2-0 eagleml-main-2-0.xsd" xsi:type="ReferenceTransactionMessage">    <referenceTransaction>         <header>             <objectType>Calendar</objectType>         </header>         <calendar>     ...

Warehouse Data Object Transaction Level Header

<EagleML xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" eaglemlVersion="2-0" eaglemlType="WarehouseTransactionMessage" xsi:schemaLocation="http://www.eagleinvsys.com/2011/EagleML-2-0 eagleml-main-2-0.xsd" xsi:type="WarehouseTransactionMessage">    <warehouseTransaction>         <header>             <batchKey>entity^20140126^EAGLE PACE</batchKey>             <objectType>WarehouseOpenLot</objectType>         </header>         <warehouseOpenLot>     ...

Â