hffix icon indicating copy to clipboard operation
hffix copied to clipboard

Support for legacy FIX data dictionary in one file

Open marlowa opened this issue 9 months ago • 6 comments

Please consider adding support for a FIX data dictionary that is in a single XML file. I have seen several projects use those from QuickFix. I know that after 5.0SP2 there is a move to use separate files which hffix is already using but IMHO it would be nice to support the single file as well. Without that support it will be harder for some projects with old FIX parsing code to migrate to hffix.

marlowa avatar Feb 25 '25 20:02 marlowa

That sounds like a good idea.

jamesdbrock avatar Mar 25 '25 16:03 jamesdbrock

I'm glad you agree. Unfortunately, I don't have the skill to implement it. I was hoping that if you think it is a good idea you might implement it.

marlowa avatar Oct 03 '25 06:10 marlowa

I've never used QuickFIX data dictionaries. What does a QuickFIX data dictionary do?

jamesdbrock avatar Nov 08 '25 11:11 jamesdbrock

I am referring to files like FIX50SP2.xml and FIXT11.xml. Together these define the various FIX messages and are used in a number of products, including quickfix, to generate class code from. The key file is FIX50SP2.xml. hffix takes a similar approach but uses later versions of the dictionary where FIX50SP2.xml has been split into multiple files. I am asking for hffix to support the single file before it got split up. Several places such as exchanges are still using the single file and are thus currently prevented from using hffix.

marlowa avatar Nov 08 '25 11:11 marlowa

Ok I get it. Yeah, a code-generator for data dictionaries is beyond the scope of hffix. That would best be implemented as a separate stand-alone program which reads in a data dictionary and then outputs a C++ file which starts with #include "hffix.hpp".

jamesdbrock avatar Nov 08 '25 11:11 jamesdbrock

My apologies, I didn't make my meaning clear. What I am asking for is a change so that the XML processed by hffix can be a single file, FIX50SP2.xml, instead of the Messages.xml and Fields.xml under FIXRepository/Basic. This splitting up into messages and fields was done some time ago by FIX, but many people still use the old file before the split.

marlowa avatar Nov 08 '25 14:11 marlowa