[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [OASIS Issue Tracker] Commented: (MQTT-145) MAY/may contain inconsistent usage - 1 known, others need researching
[ http://tools.oasis-open.org/issues/browse/MQTT-145?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=36679#action_36679 ] Peter Niblett commented on MQTT-145: ------------------------------------ I have reviewed all the instances of MAY and may. See https://www.oasis-open.org/apps/org/workgroup/mqtt/email/archives/201402/msg00118.html > MAY/may contain inconsistent usage - 1 known, others need researching > --------------------------------------------------------------------- > > Key: MQTT-145 > URL: http://tools.oasis-open.org/issues/browse/MQTT-145 > Project: OASIS Message Queuing Telemetry Transport (MQTT) TC > Issue Type: Bug > Components: core > Affects Versions: 3.1.1 > Environment: Keywords > Reporter: Patrick Durusau > > Section 3.8.3 Payload reads in part: > ***** > The Topic Filters are UTF-8 encoded strings, which *MAY* contain special wildcard characters to represent a set of topics, see Section 4.7.1. > ***** > Whereas 4.7.1 reads: > ***** > A subscription's Topic Filter *may* contain special wildcard characters, which allow you to subscribe to multiple topics at once. > ***** > The difference between "MAY" and "may" for interoperability is substantial: > Under RFC2119, MAY is defined as: > ***** > MAY This word, or the adjective "OPTIONAL", mean that an item is truly optional. One vendor may choose to include the item because a particular marketplace requires it or because the vendor feels that it enhances the product while another vendor may omit the same item. An implementation which does not include a particular option MUST be prepared to interoperate with another implementation which does include the option, though perhaps with reduced functionality. In the same vein an implementation which does include a particular option MUST be prepared to interoperate with another implementation which does not include the option (except, of course, for the feature the option provides.) > ***** > So the first "MAY" has an interoperability requirement between applications that support or don't support the use of wildcards to select sets of topics. > However, that interoperability requirement is *lost* in 4.7.1, which uses the lowercase "may," according to The RFC Style Guide, http://www.rfc-editor.org/rfc-style-guide/rfc-style, which reads in part: > ***** > To simply specify a necessary logical relationship, the normal lower-case words should be used. On the other hand, if the capitalized words are used in a document, choose and use them carefully and consistently. > ***** > The short version: MAY requires interoperability, may does not require interoperability. > I mention this because the specification uses MAY 21 times and may 39 times. I suggest that you carefully compare all uses of MAY/may to eliminate further conflicts like this one. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]