• Version 1.16.0
Show / Hide Table of Contents

Using QuickFIX Data Dictionary

The Engine generates an identifier (id) for each given QuickFIX dictionary. This id is equal to the data dictionary file name without its extension. Therefore, the QuickFIX data dictionary becomes a session level dictionary, so its id should be used to find the IMessageInfoDictionary object.

For example:

var settings = new EngineSettings
{
    Dictionary = "QuickFixDictionary.xml"
};

Engine.Init(settings);

IMessageInfoDictionary quickFixDictionary = Engine.Instance.MessageInfoDictionaryManager["QuickFixDictionary"];
Session session = new ("Sender", "Target", quickFixDictionary);
Note

QuickFIX data dictionary files can include duplicates of the field node (explicitly or via the component node) in the message node. This leads to the ambiguity between the required attributes of duplicates because there is no way to detect which attribute is correct. The wrong required attribute can lead to errors during message validation. However, the QuickFIX Engine processes duplicated field nodes silently, without exceptions or warnings. To simplify the migration from the QuickFIX Engine, the OnixS FIX Engine also processes duplicates without exceptions but writes warning messages to the Engine's log. This allows to reuse QuickFIX data dictionary files in the OnixS FIX Engine and, at the same time, detect and correct mistakes.

In this article
Back to top Copyright © Onix Solutions.
Generated by DocFX