• Programming Guide
  • Api Documentation
  • OnixS .NET Core / .NET 6 FIX Engine, version 1.9.0
Show / Hide Table of Contents
  • Introduction
  • System Requirements
  • Project Dependency Management
  • Getting Started
  • Error Reporting
  • Licensing
  • Engine Initialization and Shutdown
  • Selecting FIX Version
  • FIX Message
    • Manipulating Message Fields
  • FIX Session
    • Establishing FIX Connection
    • Exchanging Messages
    • Message Sequence Numbers
  • Configuring the Engine
    • Loading Engine Settings From Configuration Files
    • Multiple Listen Ports
  • Venue Specific Settings
    • CME Specific Settings
  • Logging Services
    • Selecting Session Storage
    • Customizing Message Logging
  • Thread Safety
  • Repeating Groups
  • Sessions
    • Session States
    • Session Events
    • Accepting FIX Session Without a Prior Creation of Session Object
    • Custom Logon Message
    • Logon Authentication
    • Establishing FIX Connection via Proxy
    • Resetting Message Sequence Numbers
    • Resetting Message Sequence Numbers via ResetSeqNumFlag Field
    • Resending Messages
    • Memory-based Session Storage
    • File-based Session Storage
    • Async File-based Session Storage
    • Pluggable Session Storage
    • Scheduling Session for Automatic Connection
      • Session Schedule
      • Session Connection Settings
      • XML-based Schedules and Connection Settings
    • Failover
    • Message Sending Latency
    • Message Throttling
  • Messaging
    • Manipulating Real Numbers
    • Message Validation
    • Serialized FIX Messages
    • Typed FIX Messages
    • Flat Messages
      • Flat Group Reader
    • Using LINQ
  • FIX Dictionary
    • XML-based Dictionary Description
    • Session-level Dictionary
    • Dictionary Exploration
    • Using QuickFIX Data Dictionary
  • Engine Events
  • TLS/SSL Encryption
    • Using TLS/SSL Encryption
    • Supported Certificates
    • Session-level TLS/SSL Settings
    • Verification of Client SSL Certificates
    • Custom verification of SSL Certificates
    • TLS/SSL Troubleshooting
  • FAST Coding
    • Encoding And Decoding Data Using FAST
    • FAST Template
    • Generating FIX Dictionaries For FAST Coding
    • FAST Exceptions
  • FIXML Converter
  • Reducing Garbage Collection Overhead
  • Best Practices
    • Low Latency Best Practices
    • High Throughput Best Practices
  • Migration Guide
  • Frequently Asked Questions
  • Glossary
  • External Resources
  • Support

FIXML Converter

FIXML Converter is a library that converts FIX messages to FIXML and vice versa.

By default, the converter uses the latest published FIXML Schema from FIX Trading Community.

For example:

var converter = new FixmlConverter(ProtocolVersion.Fix50);

Message fixMessage = converter.Fixml2Fix(sourceFixmlMessage); // Converts FIXML message to FIX message

string fixmlMessage2 = converter.Fix2Fixml(fixMessage); // Converts FIX message to FIXML message

Custom FIXML Dictionaries

The FixmlConverter class has the second constructor with the schemaPath parameter.

For FIX Protocol versions before FIX.4.4, this parameter should specify the custom FIXML DTD file path.

For FIX Protocol versions from FIX.4.4 and later, this parameter should specify the path to the folder that contains custom FIXML Schema file(s). This folder should contain the main FIXML Schema file with the name that matches the required FIX protocol version, e.g., fixml-main-5-0-SP2. This file either contains all definitions or references others definition files.

Additionally, the FixmlConverter class has the constructor with the schemaString parameter. This constructor can be used if your application stores the custom FIXML Schema or DTD content as a plain text string.

To convert custom FIXML messages, take the following steps:

  • Download the standard FIXML Schema or DTD for the required FIX Protocol version from FIX Trading Community.
  • Modify the FIXML Schema/DTD.
  • Create FixmlConverter class instance and specify the path to the file or folder with custom FIXML Schema/DTD in its constructor. If you use Session-level Dictionary, you also need to pass the instance of the dictionary to the FixmlConverter constructor.

To add new fields or repeating groups, use custom FIXML dictionaries. If you use a custom FIX message or repeating group, then you need to add them to the converter using the following methods:

  • AddCustomMessage(String, String)
  • AddCustomRepeatingGroup(Int32, String)

See Also

  • FIXML Tutorial
  • The FixmlConverter sample from the FIX Engine distribution package
In This Article
Back to top Copyright © Onix Solutions.
Generated by DocFX