In some scenarios, such as caching or writing parts to a package, it is necessary to determine if two pack URIs are equivalent without resolving them.

The package implementer shall consider pack URIs equivalent if:

  1. The scheme components are octet-by-octet identical after they are both converted to lowercase; and

  2. The URIs, decoded as described in §B.2 from the authority components are equivalent (the equivalency rules by scheme, as per RFC 3986); and

  3. The path components are equivalent when compared as case-insensitive ASCII strings.