Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #1429
Proposed Changes
I was both unclear and pedantic - I meant that the specific dbpedia example URL provided (which actually pointed to a text/html resource) is parsed without issue with the implementation coded therein and pyRfda enabled.
Providing a generic fix for
parse()
proved (as ever, with RDFLib) more tricky ....Tactics:
The encoding of query param content "=" as "%3D" causes the failure of
GraphTestCase::testGuessFormatForParse
in thathttps://linked.data.gov.au/def/agrif?_format=text/turtle
is converted to:
https://linked.data.gov.au/def/agrif?_format%3dtext/turtle
which returns a resource of text/html mimetype, triggering a "no plugin found" Exception.
So, either decode the encoded "%3D" and friends or skip the conversion of query params altogether - I chose the former.
urllib omits the empty fragment identifier and the reassembled uri is stripped of any trailing "#" that the iri might have had, which causes the failure of
NamedGraphWithFragmentTest::test_named_graph_with_fragment
so it has to be explicitly restored to the end of the uri.