[ https://issues.oasis-open.org/browse/MQTT-256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=62878#comment-62878 ]
Ken Borgendale commented on MQTT-256:
-------------------------------------
I created MQTT-288 to allow us to get a resolution of this JIRA and continue on more global definitions of metadata including its encoding on other control packets, and general rules for validation
I am concerned about the requirement in the proposal that the receiver MUST validate the message format. I suspect that most clients would prefer to ignore it, and indeed perhaps many servers. Again, this is something we can deal with in a more general sense in MQTT-288.
We should look at the set of types for message format. I do not mind doing that as a separate JIRA from this one. Besides the binary and UTF-8 now in this JIRA, I would like to see json, xml, and base64. I assume other people also have a list.
> Message Format indication and message metadata in general.
> ----------------------------------------------------------
>
> Key: MQTT-256
> URL: https://issues.oasis-open.org/browse/MQTT-256
> Project: OASIS Message Queuing Telemetry Transport (MQTT) TC
> Issue Type: Bug
> Components: futures
> Affects Versions: 5
> Reporter: Peter Niblett
> Priority: Critical
>
> MQTT 3.1.1 does not provide an architected way of indicating the format of the payload that is passed in a PUBLISH packet. We need to avoid the risk of spec or data bloat, and I'm not advocating adding a complicated header structure that passes schemas, messageType indicators, MIME type strings or the like, but at the moment there is no standard way for a receiver even to be able to tell whether the payload is binary or string.
> There are three ways that this can be dealt with today:
> 1. The Receiver already knows. It's implementing some bigger standard or program design which has dictated the encoding format (e.g. someone decides that all messages will be JSON)
> 2. There is an indicator embedded somewhere in the Topic name (The Topic name is the only header we have in MQTT 3.1.1). There isn't a standard convention for this, so topic space designers have to choose their own way of doing it.
> 3. The Receiver assumes one format and has a go parsing it. If that doesn't look right it tries another
--
This message was sent by Atlassian JIRA
(v6.2.2#6258)