Use "default" identifier to represent default quotas and rate limits. #14
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This addresses #7 with a simpler suggestion than what was most recently discussed in the thread. In that discussion, we favored using glob patterns (using "*" as a wildcard) to match groups of paths.
While they are widely used, I did not find standard definitions for glob patterns that seemed suitable for citing from a standards document. One person that I discussed this with suggested using the robots.txt specification, which defines the "*" special character as "matching 0 or more instances of any character" (presumably excluding "/"). The exclusion of "/" makes this inappropriate for our usage, as we would want a way to specify all paths with a single expression. We might consider redefining "*" or using a different wildcard (e.g. "**") but I feel that it would not be good to use a close-but-different meaning or to define our own wildcards for this relatively-small specification extension.
Ideally a method for specifying groups of paths would be part of the broader OpenAPI Specification.
In proposals/004_Overlays.md, Darrel Miller proposes a mechanism for applying JSON (or YAML) fragments to an OpenAPI document at targets specified with JMESPath expressions. If approved, this might allow quotas and rates to be applied to groups of operations using overlays. However, it assumes that quotas and rates for individual paths could be attached directly to path objects in an OpenAPI description, and this does not seem to be possible with the current structure of the SLA4OAI Specification, which places paths in
rates
andquotas
objects.This seems worth discussing with the OpenAPI technical committee. The most recent overlays proposal is a year old and might still be revised before being accepted into the standard, and the committee may have suggestions for ways to restructure the SLA4OAI spec to be more compatible with overlays.
"default" is proposed here because it seems to be the simplest way to provide for default values while avoiding the complexity of nonstandard definitions of wildcards and the difficulties (noted above) of using overlays with the SLA4OAI spec.