RFC 3987 IRI Syntax Support
Summary
Implement RFC 3987 Internationalized Resource Identifiers (IRIs).
Background
IRIs extend URIs to support Unicode characters beyond ASCII.
Requirements
- Parse IRI with Unicode characters in path
- Parse IRI with Unicode characters in query
- Parse IRI with Unicode characters in fragment
- Handle IDNA (Internationalized Domain Names)
- Proper UTF-8 handling
RFC 3987 Components
- iunreserved = unreserved / ucschar
- ipchar = iunreserved / pct-encoded / sub-delims / ":" / "@"
- iquery = ipchar / iprivate / "/" / "?"
Acceptance Criteria
- Parse IRIs with non-ASCII characters
- Convert IRI to URI (ASCII encoding)
- Convert URI to IRI (decode when possible)
- Tests with international domain names
- Tests with CJK characters in path
Related
- RFC 3987: https://www.rfc-editor.org/rfc/rfc3987