afs commented on issue #4025: URL: https://github.com/apache/jena/issues/4025#issuecomment-4845148998
Not a complete question! ``` 15:26:26 WARN JsonLdToRdf :: Non well-formed subject [https://example.com/dir/filename with spaces] has been skipped. ``` `JsonLdToRdf` is part of titanium-jsonld, which Jena uses for JSON-LD processing. It seems to be converting the `%20` while resolving the IRI. Absolute IRIs are not affected. Decoding happens in `java.net.URI.getPath`. (on the 1.7.0 release tag source code; code in the repo has been reshuffled). `UriResolver.resolveAsComponents(... , URI relative)` `String componentPath = relative.getPath();` ``` public String getPath() { String decoded = decodedPath; if ((decoded == null) && (path != null)) { decodedPath = decoded = decode(path); } return decoded; } ``` Maybe as simple as using `relative.getRawPath()` but also it may have knock on effects for titanium-jsonld; it might be required by the JSON-LD spec. [RFC 3986 Percent-Encoding Normalization](https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.2) isn't usually done until the application decides it is the right thing to do. There are other `URI.getRaw*`. cc @filip26 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
