Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use of 'must' in section on Syntax of URLs as Payment Method Identifiers is suspicious #28

Closed
dbaron opened this issue Apr 11, 2017 · 1 comment

Comments

@dbaron
Copy link
Member

dbaron commented Apr 11, 2017

The section on Syntax of URLs as Payment Method Identifiers currently says:

When URLs are used for payment method identifiers they MUST be absolute URLs including, at most, a scheme, host, port and path. The URL must be a potentially trustworthy URL as defined in the [SECURE-CONTEXTS] specification. Identifier URLs MUST have null query and fragment values.

The first thing that's odd here is that there are three uses of "must", but only 2 of them are marked up as RFC2119 "must"s (the middle one is not).

But the slightly larger point here is that it's imposing a normative requirement on a URL. While RFC2119 does allow this, what I see as modern Web specification style, described well in a blog post Hixie wrote in 2006 tends to avoid this usage of "must".

In particular, it's seen as preferable to either:

  • turn these musts into a definition, by excluding URLs that don't meet these requirements from the definition, and then elsewhere using that definition to write other conformance requirements that apply to user agents or content producers (I suspect this is the best choice here)
  • turn these musts into conformance requirements that apply to the actions of a particular party, e.g., that a user agent must ignore URLs that don't meet these requirements in a certain context

(I got here from w3ctag/design-reviews#152.)

@marcoscaceres
Copy link
Member

No longer an issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants