 
            On Wed Oct 8 13:52:49 2025 +0000, Nikolay Sivov wrote:
Is it possible to reuse CreateUri() for this?
We could. But the behavior is slightly different. For example, uri_factory_CreateUri() has a similar behavior as CreateUri(..., Uri_CREATE_NO_DECODE_EXTRA_INFO | Uri_CREATE_ALLOW_IMPLICIT_FILE_SCHEME | Uri_CREATE_NO_CANONICALIZE, ...). The Uri_CREATE_NO_CANONICALIZE will cause the absolute URI of "http://example.com" to be "http://example.com" while IUriRuntimeClass adds an "/" at the end and becomes "http://example.com/". So if we want to reuse CreateUri(), we will need to reconstruct the absolute URI from each component. However, to reconstruct the absolute URI, there is a bit of information missing. For example, in "http://user:@example.com", we need to know if there is a ":" after "user". So we still need to parse the scheme and authority to know that. Thus, we could end up having some URI parsing logic in IUriRuntimeClass() with the main parsing happening in CreateUri(). I am afraid that there might be more inconsistencies, and there is no evidence of that IUriRuntimeClass actua lly uses IUri, so I decided to have a dedicated parser for IUriRuntimeClass.