jcabi/jcabi-urn

URN class is accepts reserved characters

Closed this issue · 1 comments

The URN class has support for query parameters and path segments. Both are not allowed in URNs, according to RFC 2141, because '/','?' are reserved and '&' is excluded in Namespace Specific String (NSS).

See RFC 2141, sections 2.2, 2.3 and 2.3:
"Namespace developers SHOULD NOT use these characters in unencoded form, but rather use the appropriate %-encoding for each character."

"An URN ends when an octet/character from the excluded character set () is encountered. The character from the excluded character set is NOT part of the URN."

@yegor256 please pay attention to this issue