Query Parameters Are Not Resource IdentifiersUsing query parameters as the primary way to identify a document breaks with established web conventions. In the web architecture, the path component of a URL should identify the resource, while query parameters modify the request or representation.

    On the web, the path component of a URL is what identifies a resource.

      The convention since the early days of HTTP has been that each document or object should have its own distinct path. Query parameters are intended to modify or filter requests to a resource, not to define the resource itself. They allow for variations in representation — for example, filtering search results or paginating lists — but the core identity of a document should reside in the path.

      When query parameters are used as primary identifiers, a number of problems arise. Caching systems and content delivery networks often treat such URLs differently, reducing cache efficiency. Search engines may fail to recognize canonical versions of a document, which can fragment indexing and degrade discoverability. Social networks and link unfurlers also tend to handle query URLs inconsistently, which can affect how shared documents appear.

      In web architecture and RESTful design, clarity of resource identity is central. Paths define what the resource is; query parameters describe how we want to interact with it. Using query parameters to identify documents breaks this separation and undermines long-established conventions that make the web predictable and interoperable.

    A Profile, a Feed, and a Contact are documents

    Query paramaters

      Then we can use Query Parameters for filtering and different App Views!