Description
Match explicit */*, type/* or exact MIME ranges against complete offers with ASCII case folding; no quality, parameters or suffix wildcard matching.
A media type has a type/subtype token and may carry named parameters. Multipart content uses explicit boundary delimiter lines around its parts. Token case rules, parameter quoting, repeated records and exact line endings affect how a representation is interpreted; a lexical check is narrower than parsing a complete message.1
Match explicit */*, type/* or exact MIME ranges against complete offers with ASCII case folding; no quality, parameters or suffix wildcard matching.
When to use this tool
Use this tool to match explicit */*, type/* or exact MIME ranges against complete offers with ASCII case folding; no quality, parameters or suffix wildcard matching.
How to use the tool and how it works
- Enter range, offers using the field definitions below.
- Run the operation. Correct input errors before interpreting an output.
- Read result.matches. Use the ordering, boundary rules and absence conditions described below.
Normalize media type spellings, validate a range using only whole type/subtype wildcards, and return matching concrete-offer indexes in input order.2
| Input field | Meaning and units | Accepted input |
|---|---|---|
| range | A bare type/subtype range with only supported whole-component wildcards. | Text, at most 8,192 UTF-16 code units; the operation’s grammar also applies. |
| offers | Concrete bare type/subtype offers in preference/source order. | Dense list of at most 128 strings, each at most 8,192 UTF-16 code units. |
| Output field | Interpretation |
|---|---|
| result | Object containing the named fields below. |
| result.matches | Per-part flags for exact equality of actual and declared lengths. |
{
"input": {
"range": "text/*",
"offers": [
"text/html",
"application/json"
]
},
"output": {
"result": {
"matches": [
0
]
}
}
} Limitations and assumptions
- There are no quality weights, parameter comparisons or structured-suffix wildcard patterns.
- Supported boundary strings contain 1–70 characters from the declared MIME boundary subset and cannot end in a space. Single-byte envelope budgets are distinct from UTF-8 text byte counts and from a complete MIME transport.
- Every declared top-level input field is required and unexpected fields are rejected. Ordinary strings are limited to 8,192 UTF-16 code units and lists to 128 entries, with tighter operation-specific bounds where stated. JSON text has bounded nesting and node counts.
- Numeric outputs must be finite and no larger in absolute magnitude than the safe-integer limit; operations returning exact large integers use decimal text. Positions are zero-based and spans end exclusively unless the operation explicitly states a different convention.
Alternative or Complementary methods
Choose the target media-type and multipart conventions explicitly. Use a complete MIME parser for nested messages and encodings; these record and delimiter tools handle only their stated representations.
References
-
RFC 2046: MIME Media Types — RFC Editor
-
Tool behavior and example: Media Type Wildcard Offer Match — tool.io
Similar or alternative tools
- Media Type Offer Specificity Order
Stable-order bare MIME ranges by exact/type-wildcard/all-wildcard specificity only; excludes qualities, parameters and offer preference.
- Media Type Parameter Conflict Table
Audit conflicting decoded MIME parameter values under case-insensitive names and case-sensitive literal values; no registered-parameter equivalence inference.