Visual RFC.
ALL RFCs / RFC 3986
Read the RFC ↗
RFC 3986 / RELATIVE REFERENCES

Resolve a relative reference

03

Resolution merges a reference with a base URI and removes dot segments in the defined order.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

DIAGRAM§ 5.2 ↗
RFC 3986 · § 5.2EXAMPLE
4 / 4
Resolve a relative referenceA path changes from base segments through a merged dot-segment path to the resolved absolute URI.Resolve ../d?x=1 against a basehttps://example.org/a/b/cbase URIa/d/a/dremove the b / .. pairhttps://example.org/a/d?x=1
04
Keep the new query.

The result is https://example.org/a/d?x=1.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
KEY POINT

A relative reference needs a base.

  • A reference with its own scheme replaces the base’s scheme-dependent parts.
  • A relative path is merged with the base path, usually replacing its last segment.
  • Dot-segment removal is part of the resolution algorithm, not a general string replacement.
DETAILS

The examples simplify the wire representation. Follow the linked specification and application profile for implementation.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. The five URI components
  2. Escape data, preserve delimiters
  3. Resolve a relative reference
  4. Authority has its own structure
  5. Normalize only what is safe
  6. An identifier can mislead
RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗