Details
-
Type: Bug
-
Status: Closed
-
Priority: Default
-
Resolution: Fixed
-
Affects Version/s: 1.2.1
-
Fix Version/s: 1.3.1
-
Component/s: Message Generation
-
Labels:None
Description
This is similar to QFJ-40.
Starting with FIX44, the SymbolSfx field has 2 hard-coded constants - "WI" and "CD". in the FIX44.xml file we have them called out explicitly with
<field number="65" name="SymbolSfx" type="STRING">
<value enum="WI" description="WHEN_ISSUED"/>
<value enum="CD" description="A_EUCP_WITH_LUMP_SUM_INTEREST"/>
</field>
All the other files have the field being empty (ie no pre-canned values).
The FIX spec says: "Valid values: As defined in the NYSE Stock and bond Symbol Directory and in the AMEX Fitch Directory.", plus in FIX44 you get the 2 hardcoded values.
As a result, when you have a message with SymbolSfx="A" in FIX40-4.3 it passes validation since there is no set of valid values in the DataDictionary.
However, with FIX4.4 you have the 2 hard-coded values, your message has something else and as a result it fails validation.
Not sure what the best solution is, aside from doing the same approach as QFJ-40: commenting out the valid constants in FIX4.4. but that leads to usability loss.
Perhaps we can create some token that takes in a RegEx pattern as a set of other valid values?
or maybe a marker saying that "all other strings are valid"?