boostorg / boostorg/url

Relative path resolver without normalization

Open
#983 18 comments 0 reactions 0 assignees View on GitHub
Feature
Dominant language
C++
Stars
205
Forks
60
PR merge metrics
No merged PRs in 30d

Description

Hi,
I was wondering if I could use `Boost.URL` to implement resolving of relative IRIs as mandated in the SPARQL standard:
https://www.w3.org/TR/2013/REC-sparql11-query-20130321/#relIRIs

Basically it refers to section 5.2 of the [RFC 3986](https://www.ietf.org/rfc/rfc3986.txt), but explicitly states that "Neither Syntax-Based Normalization nor Scheme-Based Normalization (described in sections 6.2.2 and 6.2.3 of RFC3986)" should be performed, which is done by `Boost.URL` without any way to turn it off.
So that leads me to two questions:
1. Could you implement a variant of the resolve algorithm that explicitly only removes dot segments?
2. And if not, could I just copy the code and replace all calls to `normalize_path` with calls to https://github.com/boostorg/url/blob/3f8a428bf0aeae18cbdfd23292910641d6f69525/src/detail/normalize.cpp#L316-L613 to make it work?

Thank you.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.