FIXTradingCommunity / fix-simple-binary-encoding

A FIX standard for binary message encoding
Other
261 stars 69 forks source link

Possibly redundant "description" attrubute in the "semanticAttributes" attributeGroup #143

Open ujos opened 2 years ago

ujos commented 2 years ago

I have a problem using the Visual Studio for CME iLink3 SBE schema editing.

After I've added semanticAttributes to the simpleDataType, memberDataType and compositeDataType elements, the VS started to complain about the duplicated description attribute. In fact simpleDataType, memberDataType and compositeDataType have the description attribute and semanticAttributes element has it as well.

From my point of view the description tag is redundant for semanticAttributes, but I'm not the XML expert. Probably it is just a bug in the Visual Studio.

Attached in the attachment.zip are:

donmendelson commented 2 years ago

Questions about CME's message schema should be addressed to their support group. For one, they can tell you which version of the SBE standard it conforms to.

ujos commented 2 years ago

Well... the question is not about CME SBE specification. I mentioned CME SBE to explain how did I find the description attribute in the semanticAttributes.

Don't you think that the description attribute is redundant in semanticAttributes ?

donmendelson commented 2 years ago

@ujos semanticAttributes is an attribute group containing description and semanticType attributes, so I assume that you want to know the distinction between those two. description is free-form text for any humanly readable explanation. On the other hand, semanticType is a little more specific. It was originally conceived to map SBE encoding types to the 20-some traditional FIX datatypes, such as String, UTCtimestamp, Qty, etc.

ujos commented 2 years ago

I mean why did you add the description attribute in the semanticAttributes group? Or why didn't you add the description attribute to some other group like offsetAttributes?

The problem is if you try adding the semanticAttributes group to tags like simpleDataType, that causes the problems because the description tag inside the semanticAttributes conflicts with description in the simpleDataType.

donmendelson commented 2 years ago

I understand that you believe that there "description" attribute is defined twice for the same type, causing a conflict. However, I don't see that for "simpleDataType". It has "description" as an attribute, but is does not include "semanticAttributes" attribute group. So "description" is only defined once for that type.

Conversely, "semanticAttributes" is included in "fieldType" and "blockType", which do not independently define "description", so again I do not see a conflict.

Which is not to say that the schema could not be improved. PRs will be considered.