Query parameters: http://example.com/apples?order=random&color=blue
Matrix parameters: http://example.com/apples;order=random;color=blue
- When should one use query parameters versus matrix parameters?
- Why can matrix parameters be used in the middle of a URL but query parameters cannot? For example:
http://example.com/apples;order=random;color=blue/2006/archive
- If matrix parameters are a superset of query parameters, why not use them all the time?
You can read more about matrix parameters here: http://www.w3.org/DesignIssues/MatrixURIs.html
The differences between Matrix parameters and Query Parameters are much more than just convention.
The main differences are:
urls with query params won't have their response cached by intermediaries/proxies (at present)
matrix parameters may appear anywhere in path
calculating the relative uri is different
query params are generally abused to add new verbs instead of using existing methods on resources
matrix parameters are not resources, they are aspects that help reference a resource in an information space that is difficult to represent within a hierarchy
I've written it up in more detail and with more references in
Query vs. Matrix Parameters